V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
liudaqi
V2EX  ›  问与答

对称加密很容易破解吗?

  •  
  •   liudaqi · 2018-12-31 13:01:05 +08:00 · 4691 次点击
    这是一个创建于 2158 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

    所以就像#10 楼说的,这只能算一个摘要算法,并且还是个没啥意义的摘要算法。
    lance6716
        13
    lance6716  
       2018-12-31 15:35:14 +08:00 via Android
    这也不是摘要啊,输入长度有限制,输出不等长
    singerll
        14
    singerll  
       2018-12-31 15:51:19 +08:00 via Android
    怎么解密?
    everwanna
        15
    everwanna  
       2018-12-31 17:58:47 +08:00 via Android
    先学习一点点现代密码学的基础知识再谈加密
    marcushbs
        16
    marcushbs  
       2019-01-01 01:42:53 +08:00   ❤️ 1
    土法加密难倒老师傅
    allenhu
        17
    allenhu  
       2019-01-01 08:54:29 +08:00 via Android
    古法加密
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5508 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 09:09 · PVG 17:09 · LAX 01:09 · JFK 04:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.