liudaqi
V2EX  ›  问与答

对称加密很容易破解吗?

  •  
  •   liudaqi · Dec 31, 2018 · 5425 views
    This topic created in 2729 days ago, the information mentioned may be changed or developed.

    随意生成 16 位数字 x = 3938208956888434,密钥函数 f(x)是:取 x 的第 2-5 位数字( 9382 ),与第 8~13 位数字( 956888 )的倒序相乘。即 f(x) = 9382 * 888659 (输出结果为:y = 8337398738 )

    以现代计算机的速度和算法,破解上面这种情况的函数 f(x),大约需要多少时间?

    17 replies    2019-01-01 08:54:29 +08:00
    lhx2008
        1
    lhx2008  
       Dec 31, 2018 via Android   ❤️ 1
    这是 hash,不是对称加密,如果要构造一个同 hash 的值估计也不难,因为位数不大,暴力法分分钟
    PPing520
        2
    PPing520  
       Dec 31, 2018
    .....其他位都不要了么?那 2-5 位和 8~13 位一样的数字加密结果不就重复了。。。
    Bryan0Z
        3
    Bryan0Z  
       Dec 31, 2018 via Android
    这不是对称加密吧,你怎么逆解回来
    ZRS
        4
    ZRS  
       Dec 31, 2018 via iPhone
    这不叫对称加密
    liudaqi
        5
    liudaqi  
    OP
       Dec 31, 2018
    预期的结果是大约 10 分钟之内,一般的计算机解不出来就行了。f(x)大约一周会自动更新一个。
    Kagari
        6
    Kagari  
       Dec 31, 2018
    对称加密的秘钥长度…………不好意思走错片场了,欢迎自制加密算法
    2exhjx
        7
    2exhjx  
       Dec 31, 2018
    最暴力也就 100w*1w,100 亿次运算,1gh=10 亿次,你说要多久?
    loading
        8
    loading  
       Dec 31, 2018
    楼主,你这个如何解密。写个反函数出来吧。
    2exhjx
        9
    2exhjx  
       Dec 31, 2018   ❤️ 1
    随便优化一下,因数分解 O ( n^(1/4)),再把分解出来的组合到你的数据范围里就出来了
    873681136
        10
    873681136  
       Dec 31, 2018
    这个摘要几乎没有什么意义,如果我第 2-5 位数字为 0000,那么我无论怎么算 f(x) 都是 0
    2exhjx
        11
    2exhjx  
       Dec 31, 2018
    4691*2*888659,都不用算啊楼主
    imkuang
        12
    imkuang  
       Dec 31, 2018 via Android   ❤️ 2
    这不是对称加密,或者说这都不能被叫做加密。

    楼主的算法中用到了大数分解难题的思想(得到两个数相乘的结果是很容易的,但要将一个大数分解成两个符合条件的数相乘则很难),这已经是属于非对称领域的了。
    另外,作为一个加密的算法,必须需要有一固定的解密算法才有意义。现有的非对称加密利用了数学规律,将加密结果按一特定规则继续计算下去最终可以得到原有值。而在楼主给的例子中,恕我无能为力,找不到可以解密的方法。

    所以就像#10 楼说的,这只能算一个摘要算法,并且还是个没啥意义的摘要算法。
    lance6716
        13
    lance6716  
       Dec 31, 2018 via Android
    这也不是摘要啊,输入长度有限制,输出不等长
    singerll
        14
    singerll  
       Dec 31, 2018 via Android
    怎么解密?
    everwanna
        15
    everwanna  
       Dec 31, 2018 via Android
    先学习一点点现代密码学的基础知识再谈加密
    marcushbs
        16
    marcushbs  
       Jan 1, 2019   ❤️ 1
    土法加密难倒老师傅
    allenhu
        17
    allenhu  
       Jan 1, 2019 via Android
    古法加密
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2813 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 13:25 · PVG 21:25 · LAX 06:25 · JFK 09:25
    ♥ Do have faith in what you're doing.