OpenSSL 3.0.0 αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž‚αŸ’αžšαžΈαž”αžαžΌ

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž”αžΈαž†αŸ’αž“αžΆαŸ†αž“αŸƒαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž“αž·αž„αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž…αŸ†αž“αž½αž“ 19 αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ OpenSSL 3.0.0 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž–αž·αž’αžΈαž€αžΆαžš SSL/TLS αž“αž·αž„αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž”αž•αŸ’αžŸαŸαž„αŸ—αŸ” αžŸαžΆαžαžΆαžαŸ’αž˜αžΈαžšαž½αž˜αž˜αžΆαž“αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸ‚αž›αž”αŸ†αž”αŸ‚αž€αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαžαž™αž€αŸ’αžšαŸ„αž™αž“αŸ…αž€αž˜αŸ’αžšαž·αž API αž“αž·αž„ ABI αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αžΉαž„αž˜αž·αž“αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαž›αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αž‘αžΆαž˜αž‘αžΆαžšαž€αžΆαžšαžŸαŸ’αžαžΆαž”αž“αžΆαž‘αžΎαž„αžœαž·αž‰αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž–αžΈ OpenSSL 1.1.1 αž“αŸ„αŸ‡αž‘αŸαŸ” αžŸαžΆαžαžΆαž˜αž»αž“αžšαž”αžŸαŸ‹ OpenSSL 1.1.1 αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαžšαž αžΌαžαžŠαž›αŸ‹αžαŸ‚αž€αž‰αŸ’αž‰αžΆ αž†αŸ’αž“αžΆαŸ† 2023αŸ”

αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‚αž½αžšαž±αŸ’αž™αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž›αŸαžαž€αŸ†αžŽαŸ‚αž‚αžΊαžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αŸ…αž›αŸαž "Major.Minor.Patch" αž”αŸ’αžšαž–αŸƒαžŽαžΈαŸ” αž…αžΆαž”αŸ‹αž–αžΈαž–αŸαž›αž“αŸαŸ‡αžαž‘αŸ… αžαŸ’αž‘αž„αŸ‹αž‘αžΈαž˜αž½αž™ (មេ) αž“αŸ…αž€αŸ’αž“αž»αž„αž›αŸαžαž€αŸ†αžŽαŸ‚αž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž›αž»αŸ‡αžαŸ’αžšαžΆαžαŸ‚αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžαžΌαž…αž“αŸ…αž€αž˜αŸ’αžšαž·αž API/ABI αž αžΎαž™αž›αŸαžαž‘αžΈαž–αžΈαžš (αžαžΌαž…) αž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž˜αž»αžαž„αžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαž“αžŠαŸ„αž™αž˜αž·αž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš API/ABIαŸ” αž€αžΆαžšαž’αžΆαž”αŸ‹αžŠαŸαžαžŠαŸ‚αž›αž€αŸ‚αžαž˜αŸ’αžšαžΌαžœαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αŸ…αžαŸ’αž‘αž„αŸ‹αž‘αžΈαž”αžΈ (αž”αŸ†αžŽαŸ‡)αŸ” αž›αŸαž 3.0.0 αž—αŸ’αž›αžΆαž˜αŸ—αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈ 1.1.1 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ€αžŸαžœαžΆαž„αž€αžΆαžšαžαŸ’αžšαž½αžαžŸαŸŠαžΈαž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™αž˜αŸ‰αžΌαžŒαž»αž› FIPS αžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžαŸ‚αž’αž—αž·αžœαžŒαŸ’αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ OpenSSL αžŠαŸ‚αž›αž›αŸαž 2.x αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαŸ”

αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž‘αžΈαž–αžΈαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αž˜αŸ’αžšαŸ„αž„αž‚αžΊαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž–αžΈαž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž–αžΈαžš (OpenSSL αž“αž·αž„ SSLeay) αž‘αŸ…αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ Apache 2.0 αŸ” αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ OpenSSL αžŠαŸ‚αž›αž˜αžΆαž“αž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αž–αžΈαž˜αž»αž“αž‚αžΊαž•αŸ’αž’αŸ‚αž€αž›αžΎαž’αžαŸ’αžαž”αž‘αž“αŸƒαž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ Apache 1.0 αž€αŸαžšαŸ’αžαž·αŸαžŠαŸ†αžŽαŸ‚αž› αž αžΎαž™αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž›αžΎαž€αž‘αžΎαž„αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αž’αŸ†αž–αžΈ OpenSSL αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž˜αŸ’αž—αžΆαžšαŸˆαž‘αžΈαž•αŸ’αžŸαžΆαžšαž“αŸ…αž–αŸαž›αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ OpenSSL αž€αŸαžŠαžΌαž…αž‡αžΆαž€αžΆαžšαž‡αžΌαž“αžŠαŸ†αžŽαžΉαž„αž–αž·αžŸαŸαžŸαž”αŸ’αžšαžŸαž·αž“αž”αžΎ OpenSSL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž“αŸƒαž•αž›αž·αžαž•αž›αŸ” αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž”αžΆαž“αž’αŸ’αžœαžΎαž±αŸ’αž™αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž…αžΆαžŸαŸ‹αž˜αž·αž“αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™ GPL αžŠαŸ‚αž›αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž–αž·αž”αžΆαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎ OpenSSL αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αžŠαŸ‚αž›αž˜αžΆαž“αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ GPL αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž—αžΆαž–αž˜αž·αž“αž†αž”αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž‚αž˜αŸ’αžšαŸ„αž„ GPL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αžαŸ†αž±αŸ’αž™αž”αŸ’αžšαžΎαž€αž·αž…αŸ’αž…αž–αŸ’αžšαž˜αž–αŸ’αžšαŸ€αž„αž’αžΆαž‡αŸ’αž‰αžΆαž”αžŽαŸ’αžŽαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹ αžŠαŸ‚αž›αž’αžαŸ’αžαž”αž‘αž…αž˜αŸ’αž”αž„αž“αŸƒ GPL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αžŠαŸ„αž™αžƒαŸ’αž›αžΆαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž—αŸ’αž‡αžΆαž”αŸ‹αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αž›αžΆαžŸαŸ‹αž‡αžΆαž˜αž½αž™αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ OpenSSL αž αžΎαž™αž”αžΆαž“αž›αžΎαž€αž‘αžΎαž„αžαžΆαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžšαž”αžŸαŸ‹ GPL αž˜αž·αž“αž˜αžΆαž“ αž’αž“αž»αžœαžαŸ’αžαž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™ OpenSSL αŸ”

αž”αžΎαž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž‘αŸ…αž“αžΉαž„αžŸαžΆαžαžΆ OpenSSL 1.1.1 OpenSSL 3.0.0 αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž…αŸ’αžšαžΎαž“αž‡αžΆαž„ 7500 αžŠαŸ‚αž›αžšαž½αž˜αž…αŸ†αžŽαŸ‚αž€αžŠαŸ„αž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ 350αŸ” αž€αžΆαžšαž…αŸ’αž“αŸƒαž”αŸ’αžšαžŒαž·αžαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž“αŸƒ OpenSSL 3.0.0αŸ–

  • αž˜αŸ‰αžΌαžŒαž»αž› FIPS αžαŸ’αž˜αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž‘αžΎαž„ αžšαž½αž˜αž‘αžΆαŸ†αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž‚αŸ’αžšαžΈαž”αžŠαŸ‚αž›αž’αž“αž»αž›αŸ„αž˜αžαžΆαž˜αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– FIPS 140-2 (αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αŸ‰αžΌαžŒαž»αž›αž“αŸαŸ‡αž‚αŸ’αžšαŸ„αž„αž“αžΉαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž€αŸ’αž“αž»αž„αžαŸ‚αž“αŸαŸ‡ αž αžΎαž™αž€αžΆαžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹ FIPS 140-2 αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ†αž–αžΉαž„αž‘αž»αž€αž“αŸ…αž†αŸ’αž“αžΆαŸ†αž€αŸ’αžšαŸ„αž™)αŸ” αž˜αŸ‰αžΌαžŒαž»αž›αžαŸ’αž˜αžΈαž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž”αŸ’αžšαžΎ αž αžΎαž™αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αžœαžΆαž‘αŸ…αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αž“αžΉαž„αž˜αž·αž“αž–αž·αž”αžΆαž€αž‡αžΆαž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž“αŸ„αŸ‡αž‘αŸαŸ” αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž˜αŸ‰αžΌαžŒαž»αž› FIPS αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘ αž αžΎαž™αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž”αžΎαž€αž‡αž˜αŸ’αžšαžΎαžŸ enable-fips αŸ”
  • libcrypto αž’αž“αž»αžœαžαŸ’αžαž‚αŸ„αž›αž‚αŸ†αž“αž·αžαž“αŸƒαž’αŸ’αž“αž€αž•αŸ’αžαž›αŸ‹αžŸαŸαžœαžΆαžŠαŸ‚αž›αž’αžΆαž…αžŠαŸ„αžαž”αžΆαž“ αžŠαŸ‚αž›αž‡αŸ†αž“αž½αžŸαž‚αŸ†αž“αž·αžαž“αŸƒαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ (ENGINE API αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžŠαž·αžŸαŸαž’)αŸ” αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αž–αžΈαž’αŸ’αž“αž€αž•αŸ’αžαž›αŸ‹αžŸαŸαžœαžΆ αž’αŸ’αž“αž€αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž•αŸ’αž‘αžΆαž›αŸ‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž“αŸƒαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαžΌαž…αž‡αžΆ αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž” αž€αžΆαžšαžŒαž·αž‚αŸ’αžšαžΈαž” αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž€αžΌαž“αžŸαŸ„ αž€αžΆαžšαž‚αžŽαž“αžΆ MAC αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž€αžΆαžšαž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αž αžαŸ’αžαž›αŸαžαžΆαžŒαžΈαž‡αžΈαžαž›αŸ” αžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“αžŠαžΎαž˜αŸ’αž”αžΈαž—αŸ’αž‡αžΆαž”αŸ‹αž‘αžΆαŸ†αž„αž–αžΈαžšαžαŸ’αž˜αžΈ αž“αž·αž„αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‡αŸ†αž“αž½αžŸαž“αŸƒαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαžšαž½αž…αž αžΎαž™ (αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž’αŸ’αž“αž€αž•αŸ’αžαž›αŸ‹αžŸαŸαžœαžΆαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„ OpenSSL αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αžΈαž˜αž½αž™αŸ—)αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž·αž’αžΈαžŸαžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš (RFC 4210) αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ’αž“αžΎαžŸαž»αŸ†αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαž–αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ CA αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžš αž“αž·αž„αžŠαž€αž αžΌαžαžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαŸ” αž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ CMP αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ openssl-cmp αžαŸ’αž˜αžΈαžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαž‘αž˜αŸ’αžšαž„αŸ‹ CRMF (RFC 4211) αž“αž·αž„αž€αžΆαžšαž•αŸ’αž‰αžΎαžŸαŸ†αžŽαžΎαžαžΆαž˜αžšαž™αŸˆ HTTP/HTTPS (RFC 6712) αŸ”
  • αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž—αŸ’αž‰αŸ€αžœαž–αŸαž‰αž›αŸαž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž·αž’αžΈαž€αžΆαžš HTTP αž“αž·αž„ HTTPS αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αž αž‚αžΆαŸ†αž‘αŸ’αžšαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžš GET αž“αž·αž„ POST αžŸαŸ’αž“αžΎαžŸαž»αŸ†αž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αž αž’αŸ’αžœαžΎαž€αžΆαžšαžαžΆαž˜αžšαž™αŸˆαž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈ αž€αžΆαžšαž’αŸŠαž·αž“αž€αžΌαžŠ ASN.1 αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžŸαŸ‹αž–αŸαž›αŸ”
  • EVP_MAC αžαŸ’αž˜αžΈ (Message Authentication Code API) αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αžŠαžΎαž˜αŸ’αž”αžΈβ€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αžœαžΆβ€‹αž€αžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž„αžΆαž™β€‹αžŸαŸ’αžšαž½αž›β€‹αž€αŸ’αž“αž»αž„β€‹αž€αžΆαžšβ€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž€αžΆαžšβ€‹αž’αž“αž»αžœαžαŸ’αžβ€‹αžαŸ’αž˜αžΈβ€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αž”αž‰αŸ’αž…αžΌαž›β€‹αž‚αŸ†αžšαžΌαŸ”
  • αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αž˜αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž„αŸ’αž€αžΎαžαž€αžΌαž“αžŸαŸ„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž‘αžΎαž„ - EVP_KDF (Key Derivation Function API) αžŠαŸ‚αž›αž‡αž½αž™αžŸαž˜αŸ’αžšαž½αž›αžŠαž›αŸ‹αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžαŸ’αž˜αžΈαžšαž”αžŸαŸ‹ KDF αž“αž·αž„ PRF αŸ” EVP_PKEY API αž…αžΆαžŸαŸ‹ αžŠαŸ‚αž›αžαžΆαž˜αžšαž™αŸˆαž“αŸ„αŸ‡αž€αžΆαžš scrypt, TLS1 PRF αž“αž·αž„ HKDF algorithms αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“ αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ€αž”αž…αŸ†αž‘αžΎαž„αžœαž·αž‰αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž‡αžΆαžŸαŸ’αžšαž‘αžΆαž”αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž“αŸ…αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž›αžΎαž“αŸƒ EVP_KDF αž“αž·αž„ EVP_MAC APIsαŸ”
  • αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž–αž·αž’αžΈαž€αžΆαžš TLS αž•αŸ’αžαž›αŸ‹αž›αž‘αŸ’αž’αž—αžΆαž–αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž—αŸ’αž‰αŸ€αžœ TLS αž“αž·αž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαž“αž›αŸ’αž”αžΏαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž TLS αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αžŠαŸ„αž™αžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž”αžΎαž€αž‡αž˜αŸ’αžšαžΎαžŸ "SSL_OP_ENABLE_KTLS" αž¬αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ "enable-ktls" αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžαŸ’αž˜αžΈαŸ–
    • αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αŸ†αž“αžΆαž“αŸ‹αž‚αž“αŸ’αž›αžΉαŸ‡ (KDF) αž‚αžΊ "SINGLE STEP" αž“αž·αž„ "SSH" αŸ”
    • αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž€αŸ’αž›αŸ‚αž„αž’αŸ’αžœαžΎ (MAC) αž‚αžΊ β€œGMAC” αž“αž·αž„ β€œKMAC” αŸ”
    • RSA Key Encapsulation Algorithm (KEM) "RSASVE"αŸ”
    • αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž” "AES-SIV" (RFC-8452) αŸ”
    • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž αŸ…αž‘αŸ… EVP API αžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αžΌαžŠαž”αž‰αŸ’αž…αŸ’αžšαžΆαžŸαžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ AES αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž”αžŸαŸ„ (Key Wrap)αŸ– β€œAES-128-WRAP-INV”, β€œAES-192-WRAP-INV”, β€œAES-256-WRAP-INV ” , "AES-128-WRAP-PAD-INV", "AES-192-WRAP-PAD-INV" αž“αž·αž„ "AES-256-WRAP-PAD-INV" αŸ”
    • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαžαŸ’αž…αžΈαž’αž€αŸ’αžŸαžšαžŸαž˜αŸ’αž„αžΆαžαŸ‹ (CTS) αž‘αŸ… EVP APIαŸ– β€œAES-128-CBC-CTS”, β€œAES-192-CBC-CTS”, β€œAES-256-CBC-CTS”, β€œCAMELLIA-128-CBC -CTS", "CAMELLIA-192-CBC-CTS" αž“αž·αž„ "CAMELLIA-256-CBC-CTS" αŸ”
    • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž αžαŸ’αžαž›αŸαžαžΆαžŒαžΈαž‡αžΈαžαž› CAdES-BES (RFC 5126) αŸ”
    • AES_GCM αž’αž“αž»αžœαžαŸ’αžαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš AuthEnvelopedData (RFC 5083) αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž” αž“αž·αž„αž€αžΆαžšαžŒαž·αž‚αŸ’αžšαžΈαž”αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹ αž“αž·αž„αž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž”αžŠαŸ„αž™αž”αŸ’αžšαžΎαžšαž”αŸ€αž” AES GCM αŸ”
  • PKCS7_get_octet_string αž“αž·αž„ PKCS7_type_is_αž˜αž»αžαž„αžΆαžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ… API αžŸαžΆαž’αžΆαžšαžŽαŸˆαŸ”
  • PKCS#12 API αž‡αŸ†αž“αž½αžŸαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αžŠαŸ‚αž›αž”αŸ’αžšαžΎαž€αŸ’αž“αž»αž„αž˜αž»αžαž„αžΆαžš PKCS12_create() αž‡αžΆαž˜αž½αž™ PBKDF2 αž“αž·αž„ AES αž αžΎαž™αž”αŸ’αžšαžΎαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ SHA-256 αžŠαžΎαž˜αŸ’αž”αžΈαž‚αžŽαž“αžΆ MAC αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ’αžαžΆαžšαž₯αžšαž·αž™αžΆαž”αžαž–αžΈαž˜αž»αž“ αž‡αž˜αŸ’αžšαžΎαžŸ "-legacy" αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αŸ” αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž αŸ…αž”αž“αŸ’αžαŸ‚αž˜αžαŸ’αž˜αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αž‘αŸ… PKCS12_*_ex, PKCS5_*_ex αž“αž·αž„ PKCS8_*_ex αžŠαžΌαž…αž‡αžΆ PKCS12_add_key_ex().PKCS12_create_ex() αž“αž·αž„ PKCS12_decrypt_skey_ex()αŸ”
  • αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαŸαž‘αž·αž€αžΆαžœαžΈαž“αžŠαžΌ αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αžŠαŸ„αž™αž”αŸ’αžšαžΎαž™αž“αŸ’αžαž€αžΆαžš SRWLock αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜ API αžαžΆαž˜αžŠαžΆαž“αžαŸ’αž˜αžΈ αžŠαŸ‚αž›αž”αžΎαž€αžαžΆαž˜αžšαž™αŸˆαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”
  • αž‡αž½αžšαž“αŸƒαžŸαŸ„αžŠαŸ‚αž›αž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αž»αžαž„αžΆαžš EVP_PKEY_public_check() αž“αž·αž„ EVP_PKEY_param_check() αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž„αŸ’αžšαžΈαž€αŸ– RSA, DSA, ED25519, X25519, ED448 αž“αž·αž„ X448αŸ”
  • αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„ RAND_DRBG αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰ αž‡αŸ†αž“αž½αžŸαžŠαŸ„αž™ EVP_RAND API αŸ” αž˜αž»αžαž„αžΆαžš FIPS_mode() αž“αž·αž„ FIPS_mode_set() αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰αŸ”
  • αž•αŸ’αž“αŸ‚αž€αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒ API αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž›αŸ‚αž„αž”αŸ’αžšαžΎ - αž€αžΆαžšαž”αŸ’αžšαžΎαž€αžΆαžšαž αŸ…αž‘αžΌαžšαžŸαž–αŸ’αž‘αžŠαŸ‚αž›αž›αŸ‚αž„αž”αŸ’αžšαžΎαž€αŸ’αž“αž»αž„αž€αžΌαžŠαž‚αž˜αŸ’αžšαŸ„αž„αž“αžΉαž„αž“αžΆαŸ†αž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž–αŸ’αžšαž˜αžΆαž“αž€αŸ†αž‘αž»αž„αž–αŸαž›αž…αž„αž€αŸ’αžšαž„αŸ” αžšαž½αž˜αž‘αžΆαŸ†αž„ APIs αž€αž˜αŸ’αžšαž·αžαž‘αžΆαž”αžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αž“αžΉαž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž“αŸƒαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ (αž§αž‘αžΆαž αžšαžŽαŸ AES_set_encrypt_key αž“αž·αž„ AES_encrypt) αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαž€αžΆαžŸαž‡αžΆαž•αŸ’αž›αžΌαžœαž€αžΆαžšαžαžΆαž›αŸ‚αž„αž”αŸ’αžšαžΎαž αžΎαž™αŸ” αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž‡αžΆαž•αŸ’αž›αžΌαžœαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ OpenSSL 3.0.0 αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ‚ EVP APIs αž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αžšαžΌαž”αžΈαž–αžΈαž”αŸ’αžšαž—αŸαž‘αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αžΈαž˜αž½αž™αŸ— (API αž“αŸαŸ‡αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž§αž‘αžΆαž αžšαžŽαŸ EVP_EncryptInit_ex, EVP_EncryptUpdate, αž“αž·αž„ EVP_EncryptFinal functions)αŸ” APIs αžŠαŸ‚αž›αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž™αž€αž…αŸαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž½αž™αŸ” αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αŸαžšαŸ’αžαž·αŸαžŠαŸ†αžŽαŸ‚αž›αžŠαžΌαž…αž‡αžΆ MD2 αž“αž·αž„ DES αžŠαŸ‚αž›αž˜αžΆαž“αžαžΆαž˜αžšαž™αŸˆ EVP API αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ…αž˜αŸ‰αžΌαžŒαž»αž› "αž€αŸαžšαŸ’αžαž·αŸαžŠαŸ†αžŽαŸ‚αž›" αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ”
  • αžŸαŸ†αžŽαž»αŸ†αž―αž€αžŸαžΆαžš αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž„αŸ’αžšαžΈαž€αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αŸ” αž”αžΎαž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž‘αŸ…αž“αžΉαž„αžŸαžΆαžαžΆ 1.1.1 αž”αžšαž·αž˜αžΆαžŽαž“αŸƒαž―αž€αžŸαžΆαžšαž”αžΆαž“αž€αžΎαž“αž‘αžΎαž„ 94% αž αžΎαž™αž‘αŸ†αž αŸ†αž“αŸƒαž€αžΌαžŠαžˆαž»αžαžŸαžΆαž€αž›αŸ’αž”αž„αž”αžΆαž“αž€αžΎαž“αž‘αžΎαž„ 54% αŸ”

αž”αŸ’αžšαž—αž–: opennet.ru

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹