1e1051a39Sopenharmony_ci# 2e1051a39Sopenharmony_ci# Copyright 2021 The OpenSSL Project Authors. All Rights Reserved. 3e1051a39Sopenharmony_ci# 4e1051a39Sopenharmony_ci# Licensed under the Apache License 2.0 (the "License"). You may not use 5e1051a39Sopenharmony_ci# this file except in compliance with the License. You can obtain a copy 6e1051a39Sopenharmony_ci# in the file LICENSE in the source distribution or at 7e1051a39Sopenharmony_ci# https://www.openssl.org/source/license.html 8e1051a39Sopenharmony_ci 9e1051a39Sopenharmony_ci# Tests start with one of these keywords 10e1051a39Sopenharmony_ci# Cipher Decrypt Derive Digest Encoding KDF MAC PBE 11e1051a39Sopenharmony_ci# PrivPubKeyPair Sign Verify VerifyRecover 12e1051a39Sopenharmony_ci# and continue until a blank line. Lines starting with a pound sign are ignored. 13e1051a39Sopenharmony_ci 14e1051a39Sopenharmony_ciTitle = DH tests (with random keys) 15e1051a39Sopenharmony_ci 16e1051a39Sopenharmony_ciPrivateKey=ALICE_dh2048 17e1051a39Sopenharmony_ci-----BEGIN PRIVATE KEY----- 18e1051a39Sopenharmony_ciMIICJgIBADCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWH 19e1051a39Sopenharmony_ciMm9pJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ 20e1051a39Sopenharmony_ci2PElcKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7w 21e1051a39Sopenharmony_cibIPc+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJD 22e1051a39Sopenharmony_cicerI660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/Uw 23e1051a39Sopenharmony_ciYSq/6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcC 24e1051a39Sopenharmony_ciAQIEggEEAoIBAH+HysSpzn94mlyNeevhb29SFyu3/maES+JRlVuHvpVOcHCrGR5J 25e1051a39Sopenharmony_cifbXWiWnn03geb1hC9HIta6l9YKwWGQYLmVu/0bRedYeqC1JfgEvwYrZME9FO+AqQ 26e1051a39Sopenharmony_ci4CpXcG/mSGtHoMPtcsUakpprNxoh3xwI+GAfSDK1lW/aA0R/A7jNCV9+lmYJAJL6 27e1051a39Sopenharmony_ci5FJvhBAODSf7JUetlWvhwDBnvram7jRGJtlvpiwmmfk+Kb4AA1ZQMIHTnPNNPLJh 28e1051a39Sopenharmony_ciNTtqELKjk3i3xxlLLlWJEbF+ZAuseDPZITtwMr4fhoeKegez+lucu6uoMm7Wek7F 29e1051a39Sopenharmony_ciG0Ne0unywftCLUrmQ/Lboqaqvlv3PAFRaLs= 30e1051a39Sopenharmony_ci-----END PRIVATE KEY----- 31e1051a39Sopenharmony_ci 32e1051a39Sopenharmony_ciPublicKey=ALICE_dh2048_pub 33e1051a39Sopenharmony_ci-----BEGIN PUBLIC KEY----- 34e1051a39Sopenharmony_ciMIICJDCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWHMm9p 35e1051a39Sopenharmony_ciJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ2PEl 36e1051a39Sopenharmony_cicKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7wbIPc 37e1051a39Sopenharmony_ci+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJDcerI 38e1051a39Sopenharmony_ci660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/UwYSq/ 39e1051a39Sopenharmony_ci6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcCAQID 40e1051a39Sopenharmony_ciggEFAAKCAQBT3K38hHa4aWKerb3st8S8Jy/abEwn3kRnLtWins75l9K4YDnIKHV9 41e1051a39Sopenharmony_ci/zTO0a75SxhvDDQqRiekw99Gel1zkxdo1/OJOTJs2KJ6Itedn3bU4p7k2599xstL 42e1051a39Sopenharmony_ci02OHWzvu4J9LQXZ0NVnhX3RzhJH/ZMZAchIVx4joRmaY7fGCXwYGsfrq7lrhYOwp 43e1051a39Sopenharmony_ciSSALvTdiNJLGm8nSOPXRWnAarTJfBhH/A38OsBY8a3bMHAlxigZWKtzY8GFIPh6O 44e1051a39Sopenharmony_ciXu/+5iasto/aUiK6Oshcf7t4la3TY6GAbPz9SyPETV2jRn2+ujrkFON8I1wuz9ud 45e1051a39Sopenharmony_ci9d5iI/cRcKKrtLdIPGc7uqGy2V2qIp3v 46e1051a39Sopenharmony_ci-----END PUBLIC KEY----- 47e1051a39Sopenharmony_ci 48e1051a39Sopenharmony_ciPrivateKey=BOB_dh2048 49e1051a39Sopenharmony_ci-----BEGIN PRIVATE KEY----- 50e1051a39Sopenharmony_ciMIICJgIBADCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWH 51e1051a39Sopenharmony_ciMm9pJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ 52e1051a39Sopenharmony_ci2PElcKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7w 53e1051a39Sopenharmony_cibIPc+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJD 54e1051a39Sopenharmony_cicerI660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/Uw 55e1051a39Sopenharmony_ciYSq/6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcC 56e1051a39Sopenharmony_ciAQIEggEEAoIBAE3A6u2we1mxSxDLkiakPs2zZqfhb2ejP2TvuA4DX/+knqrJRK7s 57e1051a39Sopenharmony_ciTqKBz80CvR7QA5CL4r/5BWJrmFet7cmF6Eh4PXE+sNswevV2C16btzAbGSGzSR5u 58e1051a39Sopenharmony_cibu6vv06Ah1rPrHrv+UjvRe2bxR/Z/PavbI71aQ+lqDkGKC/Uyr3u+PFLRwos2HfK 59e1051a39Sopenharmony_cinEX/qfnqo3N3YsPFvLidkbSJOkq6CayLT4ycTRdPxTVKELfanSEeenKJ9rKTiPdz 60e1051a39Sopenharmony_ci3y0ycyyh0kAKs2bBViq3UlVRE3kdNAQ3nCpRl9O52hCsA+BMmnAHEW8z81lEZugN 61e1051a39Sopenharmony_ci9X4uLV3XuflMrKxBGxfiCEVGcvnjpBTZXas= 62e1051a39Sopenharmony_ci-----END PRIVATE KEY----- 63e1051a39Sopenharmony_ci 64e1051a39Sopenharmony_ciPublicKey=BOB_dh2048_pub 65e1051a39Sopenharmony_ci-----BEGIN PUBLIC KEY----- 66e1051a39Sopenharmony_ciMIICJDCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWHMm9p 67e1051a39Sopenharmony_ciJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ2PEl 68e1051a39Sopenharmony_cicKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7wbIPc 69e1051a39Sopenharmony_ci+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJDcerI 70e1051a39Sopenharmony_ci660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/UwYSq/ 71e1051a39Sopenharmony_ci6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcCAQID 72e1051a39Sopenharmony_ciggEFAAKCAQAJ1Ko5/dRMpowe/7k1T+11ZNszNMEbKtXGq9KsZAqSFp6h8on/kCFe 73e1051a39Sopenharmony_ci3/SK520B/cDIjLV0W4q33iimSmG/TjwLG0jpsIKwxbzIfxjs4e1Y4pPaKfbKuCcK 74e1051a39Sopenharmony_ciBBu8Thz2brhTxooU4CPVBJerX3mJX6hbAPAl0XcIScZPcyYYHkvthjZvO0djEn1z 75e1051a39Sopenharmony_ciinhUQ37JKc74+56w/nUDjDiDFZMnwkPCtkdzLsbWW+Mu1Ysd1qQyb1XcNfkO0d/t 76e1051a39Sopenharmony_cirX00AaHwYqM7uM4slSqZhCi2w4zVvwP0BPD/TrPAjEFYEk0l2eNxBBmW5Mlss2Od 77e1051a39Sopenharmony_ciwtMjfaolhtG/beqmAneP14mCEM4lwH4a 78e1051a39Sopenharmony_ci-----END PUBLIC KEY----- 79e1051a39Sopenharmony_ci 80e1051a39Sopenharmony_ciPrivateKey=BOB_dh2048_different_pg 81e1051a39Sopenharmony_ci-----BEGIN PRIVATE KEY----- 82e1051a39Sopenharmony_ciMIICJgIBADCCARcGCSqGSIb3DQEDATCCAQgCggEBAM/ZBdjCzvFon8sEMWEXQ4vw 83e1051a39Sopenharmony_cibFV3VCq3nhCuHSLb/ZsHIuKFy/ma173ttMdN1qSOL2XJazi8l+4whU0Wga8FticR 84e1051a39Sopenharmony_ciz9U0t8ExC+0f90QRXsjXGSuDFJY6i5m6YL/xZf09g7522RqNwt4WWACgKrG7g31b 85e1051a39Sopenharmony_ci+43eXosvv5okgw5gmMrlGNZYaqnn094Ifu0UhUro6vXmlcfhnv1JpASNmxNmzrQJ 86e1051a39Sopenharmony_ciTE8W5miG5c1+6MQJdmSVKEitdUX202mRukj2Nzq16e6iOGmGMTWYGV+sK/Hnh+BD 87e1051a39Sopenharmony_cihPVIqLWW5Wfz3y5ysCsGmSKuS9bssZXWmlwRiNp/NqliyzBznG168VoKMlDQxG8C 88e1051a39Sopenharmony_ciAQIEggEEAoIBAHLPQHe9mySBSeNAqUMzKAXgxhPYPl9zC7QiyxwGiZcu/4IQ8Elr 89e1051a39Sopenharmony_cicyRhMuJBbu0T6NNruG2zUzDFWp/0dPGWq7YiOauau5iYCpKt4KZgiELDEwZqlxF+ 90e1051a39Sopenharmony_ciwXKXxSw3rJVemZyYuLmRzmUMcvBr5ZspdxsDRipN9mHSGTtQNGAiSPXB4P/bkaSW 91e1051a39Sopenharmony_ciYELavS+cHZfH4nE7DAP8b8dEID81xBLGEKAyUilDE2Nv4PamhCU5GmVSv2HXVSdI 92e1051a39Sopenharmony_cibGlj1BpvrfJyuK5EyyOqMKvwXiEQweqrVICGNtQQs+bmNpaVBCu/xRomWn5YZkqc 93e1051a39Sopenharmony_ciYjQBeOQwrhEFzbFwWi8vai9HB85tBLKEMiE= 94e1051a39Sopenharmony_ci-----END PRIVATE KEY----- 95e1051a39Sopenharmony_ci 96e1051a39Sopenharmony_ciPublicKey=BOB_dh2048_different_pg_pub 97e1051a39Sopenharmony_ci-----BEGIN PUBLIC KEY----- 98e1051a39Sopenharmony_ciMIICJTCCARcGCSqGSIb3DQEDATCCAQgCggEBAM/ZBdjCzvFon8sEMWEXQ4vwbFV3 99e1051a39Sopenharmony_ciVCq3nhCuHSLb/ZsHIuKFy/ma173ttMdN1qSOL2XJazi8l+4whU0Wga8FticRz9U0 100e1051a39Sopenharmony_cit8ExC+0f90QRXsjXGSuDFJY6i5m6YL/xZf09g7522RqNwt4WWACgKrG7g31b+43e 101e1051a39Sopenharmony_ciXosvv5okgw5gmMrlGNZYaqnn094Ifu0UhUro6vXmlcfhnv1JpASNmxNmzrQJTE8W 102e1051a39Sopenharmony_ci5miG5c1+6MQJdmSVKEitdUX202mRukj2Nzq16e6iOGmGMTWYGV+sK/Hnh+BDhPVI 103e1051a39Sopenharmony_ciqLWW5Wfz3y5ysCsGmSKuS9bssZXWmlwRiNp/NqliyzBznG168VoKMlDQxG8CAQID 104e1051a39Sopenharmony_ciggEGAAKCAQEAr5J9x7z9FWCQ27LF3pzTR+4ZdOKJJpg1qD8Vp78sg6VkoZLl+j57 105e1051a39Sopenharmony_ciuTQVgWlCEQr5tOVCBA+F0i3DCVGpE0ExkO/lVYjf6+mwTsyZWZj6IKkxpxwm9CIR 106e1051a39Sopenharmony_ciNshubotT9vagLxdRM9jepmt6A8Q2MfI1xm4yrYLZ0xQpNPT6076a+3gl6UysaDv8 107e1051a39Sopenharmony_ciwpryAiQdIexC1jz4Z7yIAND3PHWFAiAIOdipIMmuvJz2exgP1KsYTZFjJUTMBZxN 108e1051a39Sopenharmony_cifSO65JSqf6LoQ91cB5RtgwD2pjehoAl2wumjdMcdNJyYIPvcTd1BFMjUmR3vJe/n 109e1051a39Sopenharmony_cidi2IvD9wSm5tY542PWcf/7GV0bMbnykaPQ== 110e1051a39Sopenharmony_ci-----END PUBLIC KEY----- 111e1051a39Sopenharmony_ci 112e1051a39Sopenharmony_ciPublicKey=BOB_dh2048_badpub_toolarge 113e1051a39Sopenharmony_ci-----BEGIN PUBLIC KEY----- 114e1051a39Sopenharmony_ciMIICJTCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWHMm9p 115e1051a39Sopenharmony_ciJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ2PEl 116e1051a39Sopenharmony_cicKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7wbIPc 117e1051a39Sopenharmony_ci+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJDcerI 118e1051a39Sopenharmony_ci660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/UwYSq/ 119e1051a39Sopenharmony_ci6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcCAQID 120e1051a39Sopenharmony_ciggEGAAKCAQEAiSriGd9pQZ6W0sMHV6jdJYcyb2kmwJhvYT+AJc2BNZAEp5uSDhlf 121e1051a39Sopenharmony_ciMRhSeDzz09/M2nGYOKeX8fhagGagz+ElqwnY8SVwp6MgCdhSLRIccORgo4kyjRbk 122e1051a39Sopenharmony_cifx8dxGTz3e9HSSWU76E/R7Ua6vTZOx0QXvBsg9z5VX/tsyD1XGFCH34RJ5iBBef+ 123e1051a39Sopenharmony_cifc1KeJSQ7loKPLMbLoTHb/11z5eDoLTxgkNx6sjrrR6cR7Q1ojnQ3VbrltvF2Xd3 124e1051a39Sopenharmony_ciq8dP0Ia15diIi6PQjkIbsLCdTZZXjbB79TBhKr/oN9T3fLktIFm46J/yIukZd+AT 125e1051a39Sopenharmony_citMIB5jcf5YEC7jf6BbPrE0q1sXREyZPZVg== 126e1051a39Sopenharmony_ci-----END PUBLIC KEY----- 127e1051a39Sopenharmony_ci 128e1051a39Sopenharmony_ciPublicKey=BOB_dh2048_badpub_toosmall 129e1051a39Sopenharmony_ci-----BEGIN PUBLIC KEY----- 130e1051a39Sopenharmony_ciMIIBITCCARcGCSqGSIb3DQEDATCCAQgCggEBAIkq4hnfaUGeltLDB1eo3SWHMm9p 131e1051a39Sopenharmony_ciJsCYb2E/gCXNgTWQBKebkg4ZXzEYUng889PfzNpxmDinl/H4WoBmoM/hJasJ2PEl 132e1051a39Sopenharmony_cicKejIAnYUi0SHHDkYKOJMo0W5H8fHcRk893vR0kllO+hP0e1Gur02TsdEF7wbIPc 133e1051a39Sopenharmony_ci+VV/7bMg9VxhQh9+ESeYgQXn/n3NSniUkO5aCjyzGy6Ex2/9dc+Xg6C08YJDcerI 134e1051a39Sopenharmony_ci660enEe0NaI50N1W65bbxdl3d6vHT9CGteXYiIuj0I5CG7CwnU2WV42we/UwYSq/ 135e1051a39Sopenharmony_ci6DfU93y5LSBZuOif8iLpGXfgE7TCAeY3H+WBAu43+gWz6xNKtbF0RMmT2VcCAQID 136e1051a39Sopenharmony_ciBAACAQE= 137e1051a39Sopenharmony_ci-----END PUBLIC KEY----- 138e1051a39Sopenharmony_ci 139e1051a39Sopenharmony_ci# DH Alice with Bob peer 140e1051a39Sopenharmony_ciAvailablein = default 141e1051a39Sopenharmony_ciDerive=ALICE_dh2048 142e1051a39Sopenharmony_ciPeerKeyValidate=BOB_dh2048_pub 143e1051a39Sopenharmony_ciSharedSecret=28f1f890a14899b5fb600dc43ef28cdc065535bc5ee2b3e08ebb53f7ee93618f3471c0696bce289c3839ae6ced374a799c61d76cb9c60ecdc3bd75ac4ed9f060fcfa972a5ce899ff17120ce70e35d720797a62d2b3d724b9d21b9dc0f4f4ec1cbf4730d57955dc1be53210e3d10ed3e78a96914e0a201e0cc0d75744e2d8f6ed8a301bca465d4d1a518a5cda8219bdf562796842bd6a839369b5cacc77e44a9ac8475d50df6d7bddfb661241c566acd025642bc6b1bbcecb1c1e5a1429c9df552ad6a39194074b21f4e890bd79e934150850561932fee3c44ccf0e8bcd22df2f9cafad2e2f19364344fe588523a9da8545081c2118fd6b8c0e12ede6b9f5f258 144e1051a39Sopenharmony_ci 145e1051a39Sopenharmony_ci# DH Bob with Alice peer 146e1051a39Sopenharmony_ciAvailablein = default 147e1051a39Sopenharmony_ciDerive=BOB_dh2048 148e1051a39Sopenharmony_ciPeerKeyValidate=ALICE_dh2048_pub 149e1051a39Sopenharmony_ciSharedSecret=28f1f890a14899b5fb600dc43ef28cdc065535bc5ee2b3e08ebb53f7ee93618f3471c0696bce289c3839ae6ced374a799c61d76cb9c60ecdc3bd75ac4ed9f060fcfa972a5ce899ff17120ce70e35d720797a62d2b3d724b9d21b9dc0f4f4ec1cbf4730d57955dc1be53210e3d10ed3e78a96914e0a201e0cc0d75744e2d8f6ed8a301bca465d4d1a518a5cda8219bdf562796842bd6a839369b5cacc77e44a9ac8475d50df6d7bddfb661241c566acd025642bc6b1bbcecb1c1e5a1429c9df552ad6a39194074b21f4e890bd79e934150850561932fee3c44ccf0e8bcd22df2f9cafad2e2f19364344fe588523a9da8545081c2118fd6b8c0e12ede6b9f5f258 150e1051a39Sopenharmony_ci 151e1051a39Sopenharmony_ci# DH Alice with Bob peer - mismatching domain parameters 152e1051a39Sopenharmony_ciAvailablein = default 153e1051a39Sopenharmony_ciDerive=BOB_dh2048 154e1051a39Sopenharmony_ciPeerKeyValidate=BOB_dh2048_different_pg_pub 155e1051a39Sopenharmony_ciResult = DERIVE_SET_PEER_ERROR 156e1051a39Sopenharmony_ci 157e1051a39Sopenharmony_ci# DH Alice with Bob peer - pub > p - 2 158e1051a39Sopenharmony_ciAvailablein = default 159e1051a39Sopenharmony_ciDerive=ALICE_dh2048 160e1051a39Sopenharmony_ciPeerKeyValidate=BOB_dh2048_badpub_toolarge 161e1051a39Sopenharmony_ciResult = DERIVE_SET_PEER_ERROR 162e1051a39Sopenharmony_ci 163e1051a39Sopenharmony_ci# DH Alice with Bob peer - pub < 2 should fail 164e1051a39Sopenharmony_ciAvailablein = default 165e1051a39Sopenharmony_ciDerive=ALICE_dh2048 166e1051a39Sopenharmony_ciPeerKeyValidate=BOB_dh2048_badpub_toosmall 167e1051a39Sopenharmony_ciResult = DERIVE_SET_PEER_ERROR 168