• 请不要在回答技术问题时复制粘贴 AI 生成的内容
iqoo
V2EX  ›  程序员

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

  •  
  •   iqoo · Jan 5, 2024 · 3019 views
    This topic created in 1035 days ago, the information mentioned may be changed or developed.

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

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

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

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

    openssl 发展到今天,实在太复杂了,只是编译一下,光源文件就巨多,实在不算一个学习的好代码。
    pheyer
    pheyer
    Jan 12, 2024
    11
    @0o0O0o0O0o 这个太强了,一直就是想找一个这样的东东
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2522 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 14:20 · PVG 22:20 · LAX 06:20 · JFK 09:20
    ♥ Do have faith in what you're doing.