1The key and signature were generated with OpenSSL. 2It uses an RSA key with modulus length of 1024 bits, PSS padding, 3SHA-256 as the digest, MGF1 with SHA-256, and salt length of 10. 4 5The key was generated with: 6 7$ openssl genrsa -out key.pem 2048 8-----BEGIN RSA PRIVATE KEY----- 9MIIEpAIBAAKCAQEAn56hwS55y9JG5gXkTQLXm/Q4HSJdP/kECgztMMQtqgiv+QdL 100J5M7bQNbUK7ZhZt5pES5T0HjJcIENBvhXFzUZ3rBOMp4yESFLWoSL0quL0DAaRX 11/ZuZqT+Ow6LPdkwlv1JpKh03ylqxCGbw1bIFIEsFrp6QDndSPVI1ifd2QfYe+fdR 12QuF8emaGu50OKRSgziQB50JHKD0zRsh1cgUcQTyGUiFj2ndFXw1APzylU2+ouYur 13mN3ZCrvcP2J/qgQdAzDYRQ/bq/v7LNYQc+Gud+EIzE3+9spybnWRi2aLrnGwwBCZ 14s/bqc66waK0pzH8z/mDwbB2ZSIal6ARF0iWUXQIDAQABAoIBAHKu+AsjiFDgSR5V 15111ZkG41vud33EXtdXB/LyAdo62KRl0HV/qQ8jbLaeY5zwkfTmEdlNTtz3G8xgfG 16qonXJILckpJVYLAW/7WvezSf7YUEEJfqa2oElRfcWYfIf4TAW1KmNHcUvRP/qzid 17NaZkHHjCTlfTBy/NnWH/ogX5rZbfy1mqfBkGCsBAKrIp8OxIdc2gvy7fzjmOc9Bj 18wSIswqGWu5YCeJ5S6tQ3PCYwb9A/gJS4/DMz2Mq0wj1r0dn9xVtMcQZRrG3JsvHt 19Q4ImTXE3gTDS1gw8a0iB1UHlnOuq19O74ImupndpbpS2AZ3r8/GB2hGc+p3RXV+D 202MdlVEUCgYEA0h1yM5qJcAQQH5xFXK/eFF3DHeQNl10ugqiq8dF1+uFVodNhu/ZI 21OGddhgxSrYDy7ryoZLGnZxcgrdxsfgfIHFOIp8sn9DO6wxfNQEBMGrWAXlgM+0js 22EZ5FG/hHsZycM5/LXAncXmPDacu5AJ0UFv84iFahSsmaPR/FB3SdiO8CgYEAwno5 23eywaSdo2AWu/QeCtfN+Db9CmStjhHJY5NidppoeLcKwO5Jlh1DqbYvE38+SmUCeq 24nZoXmj2EBsHU8xHY7U8pS0JHW8Uj+Ii6KxzMx1cdyUXy9bCmVVj4wtfaQIHdYruj 25T7eD31NZ/sQHplsVT7EdTprVFPys7GPgy321/3MCgYEAxS25BFBb9fD6KJAAT7ED 26Gd27w4tGbeuWQCuE8JX+v8dDEzBJoZjHwZbPH4Lk+8ntMLl+1bAaRxZfJomajtNC 27qcKCleSCxBrfg0IM7eTpBo+Zve+njxGp6Aa9GDhxH26274Nf1imy0imRMvFp1feS 286Nnt9ZRGnOaAhigQQKThSaUCgYBVS9Y6N7Wv/o0BQoi4FBsDUeUL/a9x1H2nVBvz 29rIWiDIEUAeLmUH+f3bSZSMMJrZdkQIGMbjE77Q8jB5Cmq4VBUB8EayVxEp4cO5ur 30nQ4TwBnIVW2iZMAPXt58Vr/a2xqGW1XdeNfV83DdVI0mYXyPX1dDSpV6hvgxFf1a 31QuC4EQKBgQCtapB1LkCJ0ro6BDK1uxyMd4/uJWR2Ke6vZD1P+MgUDCbIwBCecick 32WUzTx9Uc8ZfRH8s3JAMz6f8XpJoxvwFVpDqOB5X1y/8TNo5kEooQB1BnwLPL169O 33Pqi9SE06v7syvuXBbFRQFOxmGvK7jYi0G1VGuc7OcjDw9SRGENtTKQ== 34-----END RSA PRIVATE KEY----- 35 36The public key in SPKI form: 37$ openssl pkey -in key.pem -pubout 38-----BEGIN PUBLIC KEY----- 39MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn56hwS55y9JG5gXkTQLX 40m/Q4HSJdP/kECgztMMQtqgiv+QdL0J5M7bQNbUK7ZhZt5pES5T0HjJcIENBvhXFz 41UZ3rBOMp4yESFLWoSL0quL0DAaRX/ZuZqT+Ow6LPdkwlv1JpKh03ylqxCGbw1bIF 42IEsFrp6QDndSPVI1ifd2QfYe+fdRQuF8emaGu50OKRSgziQB50JHKD0zRsh1cgUc 43QTyGUiFj2ndFXw1APzylU2+ouYurmN3ZCrvcP2J/qgQdAzDYRQ/bq/v7LNYQc+Gu 44d+EIzE3+9spybnWRi2aLrnGwwBCZs/bqc66waK0pzH8z/mDwbB2ZSIal6ARF0iWU 45XQIDAQAB 46-----END PUBLIC KEY----- 47 48The signing algorithm: 49 50$ openssl asn1parse -i < [ALGORITHM] 51 0:d=0 hl=2 l= 65 cons: SEQUENCE 52 2:d=1 hl=2 l= 9 prim: OBJECT :rsassaPss 53 13:d=1 hl=2 l= 52 cons: SEQUENCE 54 15:d=2 hl=2 l= 15 cons: cont [ 0 ] 55 17:d=3 hl=2 l= 13 cons: SEQUENCE 56 19:d=4 hl=2 l= 9 prim: OBJECT :sha256 57 30:d=4 hl=2 l= 0 prim: NULL 58 32:d=2 hl=2 l= 28 cons: cont [ 1 ] 59 34:d=3 hl=2 l= 26 cons: SEQUENCE 60 36:d=4 hl=2 l= 9 prim: OBJECT :mgf1 61 47:d=4 hl=2 l= 13 cons: SEQUENCE 62 49:d=5 hl=2 l= 9 prim: OBJECT :sha256 63 60:d=5 hl=2 l= 0 prim: NULL 64 62:d=2 hl=2 l= 3 cons: cont [ 2 ] 65 64:d=3 hl=2 l= 1 prim: INTEGER :20 66-----BEGIN ALGORITHM----- 67MEEGCSqGSIb3DQEBCjA0oA8wDQYJYIZIAWUDBAIBBQChHDAaBgkqhkiG9w0BAQgw 68DQYJYIZIAWUDBAIBBQCiAwIBIA== 69-----END ALGORITHM----- 70 71-----BEGIN DATA----- 72x/UnD8pyX5vRn1GajXzKPMXAeQJAKfO65RD5sCFA/iOJCOT2wY8HqJxofIaEZpsfHbK6+SUaPIK 73frMtJMIThbsnijViGgHSl1iIWZ91uUo0W/iyfPbTPr2xNzoyEOa84zqqqnOLsrnvI9KWlXjv5bf 74nNV1xPnLMnlRuM3+QIcWg= 75-----END DATA----- 76 77The signature was generated with: 78$ openssl dgst -sign key.pem -sha256 -sigopt rsa_padding_mode:pss \ 79 -sigopt rsa_pss_saltlen:32 < [DATA] > [SIGNATURE] 80 81Then the signature was wrapped in a BIT STRING. 82 83$ openssl asn1parse -i < [SIGNATURE] 84 0:d=0 hl=4 l= 257 prim: BIT STRING 85-----BEGIN SIGNATURE----- 86A4IBAQAhgPL8PV86dM9W4p1s7IWu8+9oXpPnFgutfKffNrPRny+7zUmJFER/JUDB 877gnb4qiDRqKftRIpizyrZb0M4Vrhq1CyINHM1anqinZESRy8npVvhrYv4QiHZnYX 88vXtDjgBg3Rw2DufTOKgxs+nX8a050aHsuMulTRCwR6NuHkChJlJfg6p0b1losgcL 89jKlu7EqTUUkY7Mt0WyCobxIKGbgrSVJsjV8La6rPh3LpA3d9i0Ik1HkyM1w+7utn 90h2eT/FKO8W1BtB8haiyuhatuZ1c/2uttLBSZa8hK/2W4YuomUEoWz8JIP9xXQkoq 91u0P2zB7MXW5jPJwpUX0fKXqFNSry 92-----END SIGNATURE----- 93