V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ligiggy
V2EX  ›  程序员

[不懂就问] 大家是怎么学习加密解密的

  •  
  •   ligiggy · 2021-03-19 18:21:02 +08:00 via iPhone · 3457 次点击
    这是一个创建于 1335 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想要 系统 地学习加密解密

    求推荐书籍,教程或视频等等各种资料!
    第 1 条附言  ·  2021-03-22 09:28:05 +08:00

    感谢各位大佬的回复,已经放弃深入研究了,目前的想法是入门即可,懂点基本原理,以应用为主。准备先看看《图解密码技术》了。如果有其他的资源,也请分享给我,感谢!

    22 条回复    2021-03-22 09:24:24 +08:00
    timethinker
        1
    timethinker  
       2021-03-19 18:50:23 +08:00
    如果只是想要知道如何使用,则不必关心背后的算法,只需要学习一些使用案例,在不同的场景下使用不同的算法。
    当然如果是专业搞数据信息安全这一块那就厉害了,起码数学功底要够硬。

    不要自己去创造加密算法。
    不要自己去设计加密算法。
    不要自己去实现加密算法。

    除非你知道自己在做什么。
    Still4
        2
    Still4  
       2021-03-19 20:12:48 +08:00
    一般来说加密解密你了解怎么用就行了

    如果你想了解背后的原理......涉及到很多代数理论,大把的教授学者研究这个,从零开始专门研究几年估计只敢说入门
    geelaw
        3
    geelaw  
       2021-03-19 20:22:54 +08:00 via iPhone
    类比一下大学的(连续)数学。

    如果你想学会如何计算导数和积分(知道实用算法是怎么跑的),那么随便看看各种科普文章,自己动手写写代码就 OK 。

    如果你想学习实变函数(学习可证明安全、密码分析),那么需要看密码学教材。不需要先学习实用密码学算法也可以学习这个。

    我主要学习可证明安全,启蒙教材是 A Graduate Course in Applied Cryptopgraphy ( Boneh 、Shoup 著)。
    BeautifulSoap
        4
    BeautifulSoap  
       2021-03-19 20:31:06 +08:00
    看 lz 你到底想要学到什么地步

    现代的密码学是建立在数学上的,搜了下,想要较为系统学习的话,需要首先学习数论、有限域、离散数学、概率与统计等,然后才能理解原理

    如果只是想较为系统的了解下密码学,《经典密码学与现代密码学》这本书我觉得挺不错的

    如果只是想用的话,随便关键字+语言用起来就行了
    jones2000
        5
    jones2000  
       2021-03-20 01:05:42 +08:00   ❤️ 1
    1. 下载插件(如 openssl)
    2. 调用加密函数
    3. 调用解密函数
    完成.
    ch2
        6
    ch2  
       2021-03-20 01:28:50 +08:00 via iPhone
    你是想学逆向或者 ctf 吗?这个纯粹就是解谜题
    hxndg
        7
    hxndg  
       2021-03-20 01:54:11 +08:00
    先学习数论的基础知识,再学习椭圆曲线离散知识
    然后熟悉协议,搞清楚每一步保护的是什么
    最后就是做项目了
    hyyou2010
        8
    hyyou2010  
       2021-03-20 01:58:50 +08:00
    https://www.amazon.cn/dp/B06X9T7DNR
    应用密码学:协议、算法与 C 源程序(原书第 2 版) (计算机科学丛书) Kindle 电子书

    写得很有趣味
    dawn009
        9
    dawn009  
       2021-03-20 02:46:25 +08:00
    Stanford 的在线课程 Cryptography I
    国内有翻译
    nvkou
        10
    nvkou  
       2021-03-20 03:05:04 +08:00 via Android
    系统学习?密码学呗
    然后拿 RSA, AES 研究下数学证明,
    再实践一下
    2 周左右,要么放弃,要么入门
    40EaE5uJO3Xt1VVa
        11
    40EaE5uJO3Xt1VVa  
       2021-03-20 09:21:08 +08:00
    真的就是 “算了,能用就行”,

    研究过一段时间加密,真的感慨发明加密算法的那些人真是天纵奇才
    QBugHunter
        12
    QBugHunter  
       2021-03-20 09:31:38 +08:00
    我们公司开发的程序通信都有加密,加密策略就是按位取反。。。。。
    limuyan44
        13
    limuyan44  
       2021-03-20 09:48:39 +08:00
    大学有密码学的课,对加解密的了解基本来自于那么课程。
    levelworm
        14
    levelworm  
       2021-03-20 10:54:07 +08:00
    @QBugHunter 至少 XOR 点奇怪的东西一下吧
    raptor
        15
    raptor  
       2021-03-20 11:55:41 +08:00
    看你要学多深入了。如果只是应用的话,学一点基础的数论,理解常用的算法基本原理就可以了。如果想设计或破解算法,那就要在数学上研究一辈子了吧
    JerryCha
        16
    JerryCha  
       2021-03-20 12:26:04 +08:00
    那就先去学数学
    zhangysh1995
        17
    zhangysh1995  
       2021-03-20 15:50:10 +08:00   ❤️ 1
    有本书叫加密解密,Windows 平台,可以看看
    impl
        18
    impl  
       2021-03-20 16:15:21 +08:00 via Android   ❤️ 1
    图解密码技术,日本人写的,可以看这本入门
    rayjoy
        19
    rayjoy  
       2021-03-20 18:10:39 +08:00
    @impl 是的,这本书入门不错。
    csfreshman
        20
    csfreshman  
       2021-03-21 09:27:01 +08:00
    和楼主有过一样的困扰,工作中大部分情况只是在使用,也曾经花整个周末的时间研究某些加密算法,发现背后的数学推理比较难,短时间内很难做到完全理解。
    srx1982
        21
    srx1982  
       2021-03-21 23:27:12 +08:00
    看看维基百科相关词条
    ligiggy
        22
    ligiggy  
    OP
       2021-03-22 09:24:24 +08:00
    @zhangysh1995 有具体点的书名吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5855 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 02:50 · PVG 10:50 · LAX 18:50 · JFK 21:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.