豫言源码浏览器 / Source Browser

浏览项目文件与源码

yuyan · 237 行 · 12207 字节 · UTF-8
§
寻观「标准库」之「语言核心」之「内建类型」之书。
寻观「标准库」之「语言核心」之「异常」之书。
寻观「标准库」之「数据结构」之「整数操作」之书。
寻观「标准库」之「数据结构」之「字节串」之书。
寻观「标准库」之「数据结构」之「多态列」之书。
寻观「标准库」之「数据结构」之「可选值」之书。
寻观「标准库」之「数学运算」之「安全随机」之书。
寻观「标准库」之「网络」之「传输控制协议」之书。
寻观「安全外壳密码」之「原语」之书。
寻观「安全外壳协议」之「协商」之书。
寻观「安全外壳协议」之「密钥交换」之书。
寻观「安全外壳协议」之「派钥」之书。
寻观「安全外壳会话」之「加密发包」之书。
寻观「安全外壳会话」之「重换钥」之书。
寻观「安全外壳会话」之「重换钥传输」之书。

「:文言:存双版行、所信主钥及首会话号,续验服务者签。汉语:客户端运行中重换钥上下文保存双方版本行、可信主机密钥载物和首次 session_id。:」
「客户端重换上下文」立「元类型」也。
  「客户端重换配置」立(化(「字节串」合「字节串」合「字节串」合「字节串」)而「客户端重换上下文」)也。

「客户端重换名称列」乃化「字节串」而化「整数」而「字节串」也。
「客户端重换名称列」者会「载荷」而会「序」而
  鉴「读取协商名称列」于「载荷」于「序」而
    有(「可有」于「列文」)则「列文」
    或有「可无」则
      「发生事故」授以「字节串」于『客户端重换钥缺少协商名称列』
也。

「客户端重换必须回报」乃化「字节串」而(「字节串」合「字节串」合「字节串」)也。
「客户端重换必须回报」者会「载荷」而
  鉴「读取曲线换钥回报」于「载荷」而
    有(「可有」于「字段」)则「字段」
    或有「可无」则
      「发生事故」授以(「字节串」合「字节串」合「字节串」)
      于『客户端重换钥 ECDH_REPLY 非法』
也。

「:文言:双向 KEXINIT 已定;若客户先发,旧发 IV 已递增,毋重送。汉语:共用的客户端重换钥流程在客户端 KEXINIT 已经发送时复用旧状态中的下一发送 IV。:」
「办理客户端重换钥传输」乃
  化「传输连接」而
  化「字节串」而
  化「字节串」而
  化「重换传输态」而
  化「客户端重换上下文」而
  化「爻」而
  「重换传输态」
也。
「办理客户端重换钥传输」者会「连接值」而会「客户协商」而会「服务协商」而会「旧态」而会「上下文」而会「客户已先发」而
  鉴「旧态」而
    有(「在用传输态」于「旧字段」)则(
      鉴「上下文」而
        有(「客户端重换配置」于「配置」)则(
          虑「无」者
            若「协商载荷可用吗」于「服务协商」则「元」否则「发生事故」授以「有」
            于『客户端重换钥 KEXINIT 非法』
          而
          虑「无」者
            若「协商载荷可用吗」于「客户协商」则「元」否则「发生事故」授以「有」
            于『客户端重换钥本端 KEXINIT 非法』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「零」)
              于(「字符串转字节串」于『curve25519-sha256』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥无共同曲线』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「一」)
              于(「字符串转字节串」于『ssh-ed25519』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥无共同主钥』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「二」)
              于(「字符串转字节串」于『aes256-gcm@openssh.com』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥发送密法不符』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「三」)
              于(「字符串转字节串」于『aes256-gcm@openssh.com』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥接收密法不符』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「六」)
              于(「字符串转字节串」于『none』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥发送压缩不符』
          而
          虑「无」者
            若「名称列含名吗」
              于(「客户端重换名称列」于「服务协商」于「七」)
              于(「字符串转字节串」于『none』)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥接收压缩不符』
          而
          虑「协商后发IV」者
            若「客户已先发」则
              「旧字段」中「四」
            否则
              「发送加密载荷至尽」
                于「连接值」
                于(「旧字段」中「三」)
                于(「旧字段」中「四」)于「客户协商」
          而
          虑「新客户种」者「获取安全随机字节串」于「三二」
          而
          虑「新客户公」者「求X25519公钥」于「新客户种」
          而
          虑「曲线后发IV」者
            「发送加密载荷至尽」
              于「连接值」
              于(「旧字段」中「三」)
              于「协商后发IV」
              于(「编码曲线换钥初报」于「新客户公」)
          而
          虑「回报与余」者
            「收重换钥载荷」
              于「连接值」
              于(「旧字段」中「零」)
              于(「旧字段」中「一」)
              于(「旧字段」中「二」)
              于「二零」
          而
          虑「回报」者「客户端重换必须回报」于(「回报与余」中「零」)
          而
          虑「新共密」者
            「求X25519共密」于「新客户种」于(「回报」中「一」)
          而
          虑「新哈希」者
            「求曲线交换哈希」
              于(「配置」中「零」)
              于(「配置」中「一」)
              于「客户协商」
              于「服务协商」
              于(「回报」中「零」)
              于「新客户公」
              于(「回报」中「一」)于「新共密」
          而
          虑「无」者
            若「验可信Ed25519回报」
              于(「回报」中「零」)
              于(「回报」中「二」)于「新哈希」
                于(「配置」中「二」)则「元」
            否则
              「发生事故」授以「有」于『客户端重换钥主机签名不可信』
          而
          虑「待换」者
            「准备重换钥」于(「配置」中「三」)于「新共密」于「新哈希」于「阳」
          而
          虑「无」者
            「发送加密载荷至尽」
              于「连接值」
              于(「旧字段」中「三」)
              于「曲线后发IV」
              于(「编码启用新钥载荷」于「元」)
          而
          虑「已发」者
            「重换钥必须切换」于(「切换重换发送钥」于「待换」)
          而
          虑「服务新钥与余」者
            「收重换钥载荷」
              于「连接值」
              于(「回报与余」中「一」)
              于(「旧字段」中「一」)
              于(「回报与余」中「二」)
              于「二零」
          而
          虑「无」者
            若「启用新钥载荷可用吗」于(「服务新钥与余」中「零」)则
              「元」
            否则
              「发生事故」授以「有」于『客户端重换钥 NEWKEYS 非法』
          而
          虑「已收」者
            「重换钥必须切换」于(「切换重换接收钥」于(「已发」中「零」))
          而
          虑「无」者
            若「重换钥完成吗」于(「已收」中「零」)则「元」否则「发生事故」授以「有」
              于『客户端重换钥双向切换未完成』
          而
          「在用传输态」于((「服务新钥与余」中「一」)与(「已收」中「一」)与(「已收」中「二」)
            与(「已发」中「一」)
              与(「已发」中「二」))
        )
    )
也。

「:文言:既得服务者 KEXINIT,以旧双钥再议,依 NEWKEYS 各易钥。汉语:客户端收到服务端 KEXINIT 后,生成并发送本端 KEXINIT,完成可信主机签名验证和双向密钥切换。:」
「办理客户端通道重换钥」乃
  化「传输连接」而
  化「字节串」而
  化「重换传输态」而
  化「客户端重换上下文」而
  「重换传输态」
也。
「办理客户端通道重换钥」者会「连接值」而会「服务协商」而会「旧态」而会「上下文」而
  「办理客户端重换钥传输」于「连接值」于(「本端客户协商载荷」于「元」)于「服务协商」于「旧态」于「上下文」于「阴」
也。

「:文言:客户先发 KEXINIT,以旧钥验候彼协商,先至通道报有界暂存。汉语:客户端在活动通道中先发送 KEXINIT,认证并暂存先到的通道报文,再完成重换钥;返回新传输状态和待处理报文。:」
「办理客户端先发通道重换钥」乃
  化「传输连接」而
  化「重换传输态」而
  化「客户端重换上下文」而
  「先发重换结果」
也。
「办理客户端先发通道重换钥」者会「连接值」而会「旧态」而会「上下文」而
  鉴「旧态」而
    有(「在用传输态」于「旧字段」)则(
      虑「客户协商」者「本端客户协商载荷」于「元」而
      虑「协商后发IV」者
        「发送加密载荷至尽」于「连接值」于(「旧字段」中「三」)
        于(「旧字段」中「四」)于「客户协商」而
        虑「服务协商与余」者
          「收协商并存通道报」
            于「连接值」
            于(「旧字段」中「零」)
            于(「旧字段」中「一」)
            于(「旧字段」中「二」)
            于(「罄」授以「字节串」)于「零」于「一七」而
            虑「后旧态」者
              「在用传输态」于((「服务协商与余」中「一」)与(「旧字段」中「一」)与(「服务协商与余」中「二」)
                与(「旧字段」中「三」)与「协商后发IV」)
            而
            「完成先发重换」于((「办理客户端重换钥传输」
              于「连接值」
              于「客户协商」
              于(「服务协商与余」中「零」)于「后旧态」于「上下文」于「阳」)与(「服务协商与余」中「三」))
    )
也。