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

有没有不依赖 OpenSSL 的 HTTPS 请求学习代码

  •  
  •   iqoo · 113 天前 · 1583 次点击
    这是一个创建于 113 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前 HTTPS 请求案例基本都是基于 OpenSSL 或者其他 SSL 库封装的。

    有没有更简单明了适用于学习的代码,无需考虑兼容性、稳定性、证书失效等问题,只选择固定的一种密码学套件,跑通和服务端的请求/响应即可。能让了解密码学算法但不了解 TLS 的人容易理解,在相对简洁的代码能单步调试,理解通信过程。

    11 条回复    2024-01-12 13:44:07 +08:00
    coyove
        1
    coyove  
       113 天前
    你指理解 rfc8446 ?但这东西并不存在“简单理解”
    aecra
        2
    aecra  
       113 天前 via Android
    照着协议自己实现一个(狗头)
    kneo
        3
    kneo  
       113 天前 via Android
    1. 用 java 或者 go 写一个客户端或者服务器,然后慢慢用 IDE debug 。
    2. 用网络工具抓包。大概能看下怎么封装的。

    除此之外看文档吧。这东西要不然花大功夫钻研,要不然浅尝则止。对大多数人来说没必要浪费这么多时间。
    PTLin
        5
    PTLin  
       113 天前
    一般语言都有不依赖 openssl 的 tls 库把,比如 rust 就可以使用 rustls 来实现 https 。
    https://github.com/tokio-rs/axum/tree/main/examples/tls-rustls
    ysc3839
        6
    ysc3839  
       113 天前 via Android
    直接用 libcurl ?
    Nazz
        7
    Nazz  
       113 天前 via Android
    看 golang 标准库
    tyzandhr
        8
    tyzandhr  
       113 天前 via Android
    win32 ssl certification
    hxndg
        9
    hxndg  
       113 天前
    @coyove 1.3 的 rfc 明显不是 lz 想要的,更别提 1.3 的通信流程和 1.2 还变了很多。。。
    @iqoo 你这个最好找个人带,问清楚
    不过说起来最简单的还是走 openssl 的 s_client 去模拟。。。。
    tool2d
        10
    tool2d  
       113 天前   ❤️ 1
    游戏业喜欢造轮子,我看到几个嵌入式或可移植性高的 SSL 实现,都是游戏业贡献的。

    openssl 发展到今天,实在太复杂了,只是编译一下,光源文件就巨多,实在不算一个学习的好代码。
    pheyer
        11
    pheyer  
       106 天前
    @0o0O0o0O0o 这个太强了,一直就是想找一个这样的东东
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1174 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 17:56 · PVG 01:56 · LAX 10:56 · JFK 13:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.