xmlsec-shim 1.2.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (969) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/README.md +2 -0
  4. data/Rakefile +2 -0
  5. data/ext/xmlsec/extconf.rb +14 -0
  6. data/lib/xmlsec-shim.rb +27 -0
  7. data/lib/xmlsec-shim/version.rb +5 -0
  8. data/vendor/xmlsec1-1.2.18/AUTHORS +8 -0
  9. data/vendor/xmlsec1-1.2.18/COPYING +105 -0
  10. data/vendor/xmlsec1-1.2.18/ChangeLog +1810 -0
  11. data/vendor/xmlsec1-1.2.18/Copyright +105 -0
  12. data/vendor/xmlsec1-1.2.18/HACKING +199 -0
  13. data/vendor/xmlsec1-1.2.18/INSTALL +38 -0
  14. data/vendor/xmlsec1-1.2.18/Makefile.am +186 -0
  15. data/vendor/xmlsec1-1.2.18/Makefile.in +1155 -0
  16. data/vendor/xmlsec1-1.2.18/NEWS +1 -0
  17. data/vendor/xmlsec1-1.2.18/README +15 -0
  18. data/vendor/xmlsec1-1.2.18/TODO +156 -0
  19. data/vendor/xmlsec1-1.2.18/aclocal.m4 +1197 -0
  20. data/vendor/xmlsec1-1.2.18/apps/Makefile.am +84 -0
  21. data/vendor/xmlsec1-1.2.18/apps/Makefile.in +694 -0
  22. data/vendor/xmlsec1-1.2.18/apps/cmdline.c +355 -0
  23. data/vendor/xmlsec1-1.2.18/apps/cmdline.h +89 -0
  24. data/vendor/xmlsec1-1.2.18/apps/crypto.c +396 -0
  25. data/vendor/xmlsec1-1.2.18/apps/crypto.h +70 -0
  26. data/vendor/xmlsec1-1.2.18/apps/xmlsec.c +3058 -0
  27. data/vendor/xmlsec1-1.2.18/config.guess +1502 -0
  28. data/vendor/xmlsec1-1.2.18/config.h.in +134 -0
  29. data/vendor/xmlsec1-1.2.18/config.sub +1714 -0
  30. data/vendor/xmlsec1-1.2.18/configure +17363 -0
  31. data/vendor/xmlsec1-1.2.18/configure.in +1633 -0
  32. data/vendor/xmlsec1-1.2.18/depcomp +630 -0
  33. data/vendor/xmlsec1-1.2.18/docs/Makefile.am +65 -0
  34. data/vendor/xmlsec1-1.2.18/docs/Makefile.in +721 -0
  35. data/vendor/xmlsec1-1.2.18/docs/api/Makefile.am +209 -0
  36. data/vendor/xmlsec1-1.2.18/docs/api/Makefile.in +664 -0
  37. data/vendor/xmlsec1-1.2.18/docs/api/chapters/compiling-and-linking.sgml +252 -0
  38. data/vendor/xmlsec1-1.2.18/docs/api/chapters/creating-templates.sgml +325 -0
  39. data/vendor/xmlsec1-1.2.18/docs/api/chapters/examples.sgml +102 -0
  40. data/vendor/xmlsec1-1.2.18/docs/api/chapters/init-and-shutdown.sgml +104 -0
  41. data/vendor/xmlsec1-1.2.18/docs/api/chapters/new-crypto.sgml +487 -0
  42. data/vendor/xmlsec1-1.2.18/docs/api/chapters/sign-and-encrypt.sgml +286 -0
  43. data/vendor/xmlsec1-1.2.18/docs/api/chapters/using-contexts.sgml +138 -0
  44. data/vendor/xmlsec1-1.2.18/docs/api/chapters/using-keys.sgml +26 -0
  45. data/vendor/xmlsec1-1.2.18/docs/api/chapters/using-keysmngr.sgml +592 -0
  46. data/vendor/xmlsec1-1.2.18/docs/api/chapters/using-transforms.sgml +67 -0
  47. data/vendor/xmlsec1-1.2.18/docs/api/chapters/using-x509-certs.sgml +197 -0
  48. data/vendor/xmlsec1-1.2.18/docs/api/chapters/verify-and-decrypt.sgml +265 -0
  49. data/vendor/xmlsec1-1.2.18/docs/api/home.png +0 -0
  50. data/vendor/xmlsec1-1.2.18/docs/api/images/diagrams.sxd +0 -0
  51. data/vendor/xmlsec1-1.2.18/docs/api/images/encryption-structure.png +0 -0
  52. data/vendor/xmlsec1-1.2.18/docs/api/images/key.png +0 -0
  53. data/vendor/xmlsec1-1.2.18/docs/api/images/keysmngr.png +0 -0
  54. data/vendor/xmlsec1-1.2.18/docs/api/images/sign-enc-model.png +0 -0
  55. data/vendor/xmlsec1-1.2.18/docs/api/images/signature-structure.png +0 -0
  56. data/vendor/xmlsec1-1.2.18/docs/api/images/structure.png +0 -0
  57. data/vendor/xmlsec1-1.2.18/docs/api/images/transform.png +0 -0
  58. data/vendor/xmlsec1-1.2.18/docs/api/images/transforms-chain.png +0 -0
  59. data/vendor/xmlsec1-1.2.18/docs/api/images/verif-dec-model.png +0 -0
  60. data/vendor/xmlsec1-1.2.18/docs/api/index.html +307 -0
  61. data/vendor/xmlsec1-1.2.18/docs/api/index.sgml +43 -0
  62. data/vendor/xmlsec1-1.2.18/docs/api/left.png +0 -0
  63. data/vendor/xmlsec1-1.2.18/docs/api/right.png +0 -0
  64. data/vendor/xmlsec1-1.2.18/docs/api/up.png +0 -0
  65. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-app.html +1525 -0
  66. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-base64.html +357 -0
  67. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-bn.html +705 -0
  68. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-buffer.html +603 -0
  69. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-custom-keys-manager.html +475 -0
  70. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-decrypt-with-keys-mngr.html +396 -0
  71. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-decrypt-with-signle-key.html +326 -0
  72. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-dl.html +245 -0
  73. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-encrypt-dynamic-template.html +386 -0
  74. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-encrypt-template-file.html +364 -0
  75. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-encrypt-with-session-key.html +495 -0
  76. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-encryption-klasses.html +101 -0
  77. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-errors.html +744 -0
  78. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-examples-sign-dynamimc-template.html +406 -0
  79. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-examples-sign-template-file.html +388 -0
  80. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-examples-sign-x509.html +447 -0
  81. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-examples.html +119 -0
  82. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gcrypt-app.html +578 -0
  83. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gcrypt-crypto.html +1128 -0
  84. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gcrypt-ref.html +107 -0
  85. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gcrypt.sgml +15 -0
  86. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gnutls-app.html +576 -0
  87. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gnutls-crypto.html +1076 -0
  88. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gnutls-ref.html +107 -0
  89. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-gnutls.sgml +15 -0
  90. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-index.html +1570 -0
  91. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-index.sgml +1471 -0
  92. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-io.html +226 -0
  93. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-keyinfo.html +700 -0
  94. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-keys.html +1161 -0
  95. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-keysdata.html +2067 -0
  96. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-keysmngr.html +743 -0
  97. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-list.html +643 -0
  98. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-membuf.html +143 -0
  99. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-app.html +747 -0
  100. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-certkeys.html +252 -0
  101. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-crypto.html +1153 -0
  102. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-keysstore.html +209 -0
  103. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-ref.html +113 -0
  104. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto-x509.html +478 -0
  105. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-mscrypto.sgml +21 -0
  106. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nodeset.html +542 -0
  107. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-compiling-others.html +102 -0
  108. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-compiling-unix.html +223 -0
  109. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-compiling-windows.html +138 -0
  110. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-compiling.html +117 -0
  111. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-contexts.html +229 -0
  112. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-custom-keys-store.html +250 -0
  113. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-decrypt.html +205 -0
  114. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-dynamic-encryption-templates.html +240 -0
  115. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-dynamic-signature-templates.html +250 -0
  116. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-encrypt.html +223 -0
  117. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-include-files.html +141 -0
  118. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-init-shutdown.html +194 -0
  119. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-keys-manager-sign-enc.html +307 -0
  120. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-keys-mngr-verify-decrypt.html +179 -0
  121. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-keys.html +120 -0
  122. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-keysmngr.html +140 -0
  123. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-functions.html +151 -0
  124. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-key-stores.html +83 -0
  125. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-keys.html +103 -0
  126. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-klasses.html +217 -0
  127. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-sharing-results.html +125 -0
  128. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-simple-keys-mngr.html +102 -0
  129. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-skeleton.html +254 -0
  130. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto-transforms.html +170 -0
  131. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-new-crypto.html +136 -0
  132. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-overview.html +102 -0
  133. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-sign-encrypt.html +120 -0
  134. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-sign-x509.html +176 -0
  135. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-sign.html +210 -0
  136. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-simple-keys-store.html +177 -0
  137. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-structure.html +115 -0
  138. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-templates.html +114 -0
  139. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-transforms.html +154 -0
  140. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-verify-decrypt.html +120 -0
  141. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-verify-x509.html +180 -0
  142. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-verify.html +210 -0
  143. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes-x509.html +114 -0
  144. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-notes.html +115 -0
  145. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-app.html +740 -0
  146. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-bignum.html +176 -0
  147. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-crypto.html +978 -0
  148. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-keysstore.html +209 -0
  149. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-pkikeys.html +211 -0
  150. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-ref.html +115 -0
  151. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss-x509.html +467 -0
  152. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-nss.sgml +23 -0
  153. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-app.html +800 -0
  154. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-bn.html +170 -0
  155. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-crypto.html +1329 -0
  156. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-evp.html +184 -0
  157. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-ref.html +113 -0
  158. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl-x509.html +567 -0
  159. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-openssl.sgml +21 -0
  160. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-parser.html +223 -0
  161. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-ref.html +149 -0
  162. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-reference.html +106 -0
  163. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-signature-klasses.html +101 -0
  164. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-templates.html +1290 -0
  165. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-transforms.html +3059 -0
  166. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-verify-with-key.html +318 -0
  167. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-verify-with-keys-mngr.html +388 -0
  168. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-verify-with-restrictions.html +715 -0
  169. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-verify-with-x509.html +369 -0
  170. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-version.html +143 -0
  171. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-x509.html +181 -0
  172. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-xmldsig.html +853 -0
  173. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-xmlenc.html +584 -0
  174. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-xmlsec.html +300 -0
  175. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec-xmltree.html +1529 -0
  176. data/vendor/xmlsec1-1.2.18/docs/api/xmlsec.sgml +307 -0
  177. data/vendor/xmlsec1-1.2.18/docs/authors.html +59 -0
  178. data/vendor/xmlsec1-1.2.18/docs/bugs.html +106 -0
  179. data/vendor/xmlsec1-1.2.18/docs/c14n.html +73 -0
  180. data/vendor/xmlsec1-1.2.18/docs/documentation.html +65 -0
  181. data/vendor/xmlsec1-1.2.18/docs/download.html +115 -0
  182. data/vendor/xmlsec1-1.2.18/docs/faq.html +449 -0
  183. data/vendor/xmlsec1-1.2.18/docs/images/bart.gif +0 -0
  184. data/vendor/xmlsec1-1.2.18/docs/images/libxml2-logo.png +0 -0
  185. data/vendor/xmlsec1-1.2.18/docs/images/libxslt-logo.png +0 -0
  186. data/vendor/xmlsec1-1.2.18/docs/images/logo.gif +0 -0
  187. data/vendor/xmlsec1-1.2.18/docs/images/openssl-logo.png +0 -0
  188. data/vendor/xmlsec1-1.2.18/docs/images/xmlsec-logo.gif +0 -0
  189. data/vendor/xmlsec1-1.2.18/docs/index.html +109 -0
  190. data/vendor/xmlsec1-1.2.18/docs/news.html +545 -0
  191. data/vendor/xmlsec1-1.2.18/docs/related.html +165 -0
  192. data/vendor/xmlsec1-1.2.18/docs/xmldsig-verifier.html +138 -0
  193. data/vendor/xmlsec1-1.2.18/docs/xmldsig.html +646 -0
  194. data/vendor/xmlsec1-1.2.18/docs/xmlenc.html +464 -0
  195. data/vendor/xmlsec1-1.2.18/docs/xmlsec-man.html +291 -0
  196. data/vendor/xmlsec1-1.2.18/docs/xmlsec.xsl +194 -0
  197. data/vendor/xmlsec1-1.2.18/examples/Makefile +40 -0
  198. data/vendor/xmlsec1-1.2.18/examples/Makefile.w32 +88 -0
  199. data/vendor/xmlsec1-1.2.18/examples/README +126 -0
  200. data/vendor/xmlsec1-1.2.18/examples/binary.dat +1 -0
  201. data/vendor/xmlsec1-1.2.18/examples/decrypt1.c +223 -0
  202. data/vendor/xmlsec1-1.2.18/examples/decrypt2.c +293 -0
  203. data/vendor/xmlsec1-1.2.18/examples/decrypt3.c +372 -0
  204. data/vendor/xmlsec1-1.2.18/examples/deskey.bin +1 -0
  205. data/vendor/xmlsec1-1.2.18/examples/encrypt1-res.xml +13 -0
  206. data/vendor/xmlsec1-1.2.18/examples/encrypt1-tmpl.xml +13 -0
  207. data/vendor/xmlsec1-1.2.18/examples/encrypt1.c +219 -0
  208. data/vendor/xmlsec1-1.2.18/examples/encrypt2-doc.xml +9 -0
  209. data/vendor/xmlsec1-1.2.18/examples/encrypt2-res.xml +14 -0
  210. data/vendor/xmlsec1-1.2.18/examples/encrypt2.c +244 -0
  211. data/vendor/xmlsec1-1.2.18/examples/encrypt3-doc.xml +9 -0
  212. data/vendor/xmlsec1-1.2.18/examples/encrypt3-res.xml +27 -0
  213. data/vendor/xmlsec1-1.2.18/examples/encrypt3.c +340 -0
  214. data/vendor/xmlsec1-1.2.18/examples/mywin32make.bat +18 -0
  215. data/vendor/xmlsec1-1.2.18/examples/rootcert.pem +25 -0
  216. data/vendor/xmlsec1-1.2.18/examples/rsacert.pem +83 -0
  217. data/vendor/xmlsec1-1.2.18/examples/rsakey.pem +27 -0
  218. data/vendor/xmlsec1-1.2.18/examples/rsapub.pem +9 -0
  219. data/vendor/xmlsec1-1.2.18/examples/sign1-res.xml +31 -0
  220. data/vendor/xmlsec1-1.2.18/examples/sign1-tmpl.xml +27 -0
  221. data/vendor/xmlsec1-1.2.18/examples/sign1.c +212 -0
  222. data/vendor/xmlsec1-1.2.18/examples/sign2-doc.xml +9 -0
  223. data/vendor/xmlsec1-1.2.18/examples/sign2-res.xml +30 -0
  224. data/vendor/xmlsec1-1.2.18/examples/sign2.c +248 -0
  225. data/vendor/xmlsec1-1.2.18/examples/sign3-doc.xml +9 -0
  226. data/vendor/xmlsec1-1.2.18/examples/sign3-res.xml +58 -0
  227. data/vendor/xmlsec1-1.2.18/examples/sign3.c +261 -0
  228. data/vendor/xmlsec1-1.2.18/examples/verify1.c +215 -0
  229. data/vendor/xmlsec1-1.2.18/examples/verify2.c +285 -0
  230. data/vendor/xmlsec1-1.2.18/examples/verify3.c +266 -0
  231. data/vendor/xmlsec1-1.2.18/examples/verify4-bad-res.xml +90 -0
  232. data/vendor/xmlsec1-1.2.18/examples/verify4-bad-tmpl.xml +54 -0
  233. data/vendor/xmlsec1-1.2.18/examples/verify4-res.xml +80 -0
  234. data/vendor/xmlsec1-1.2.18/examples/verify4-tmpl.xml +47 -0
  235. data/vendor/xmlsec1-1.2.18/examples/verify4.c +309 -0
  236. data/vendor/xmlsec1-1.2.18/examples/xkms-server.c +839 -0
  237. data/vendor/xmlsec1-1.2.18/examples/xmldsigverify.c +381 -0
  238. data/vendor/xmlsec1-1.2.18/include/Makefile.am +4 -0
  239. data/vendor/xmlsec1-1.2.18/include/Makefile.in +656 -0
  240. data/vendor/xmlsec1-1.2.18/include/xmlsec/Makefile.am +63 -0
  241. data/vendor/xmlsec1-1.2.18/include/xmlsec/Makefile.in +767 -0
  242. data/vendor/xmlsec1-1.2.18/include/xmlsec/app.h +424 -0
  243. data/vendor/xmlsec1-1.2.18/include/xmlsec/base64.h +67 -0
  244. data/vendor/xmlsec1-1.2.18/include/xmlsec/bn.h +99 -0
  245. data/vendor/xmlsec1-1.2.18/include/xmlsec/buffer.h +108 -0
  246. data/vendor/xmlsec1-1.2.18/include/xmlsec/crypto.h +75 -0
  247. data/vendor/xmlsec1-1.2.18/include/xmlsec/dl.h +56 -0
  248. data/vendor/xmlsec1-1.2.18/include/xmlsec/errors.h +504 -0
  249. data/vendor/xmlsec1-1.2.18/include/xmlsec/exports.h +111 -0
  250. data/vendor/xmlsec1-1.2.18/include/xmlsec/gcrypt/Makefile.am +13 -0
  251. data/vendor/xmlsec1-1.2.18/include/xmlsec/gcrypt/Makefile.in +564 -0
  252. data/vendor/xmlsec1-1.2.18/include/xmlsec/gcrypt/app.h +96 -0
  253. data/vendor/xmlsec1-1.2.18/include/xmlsec/gcrypt/crypto.h +460 -0
  254. data/vendor/xmlsec1-1.2.18/include/xmlsec/gcrypt/symbols.h +104 -0
  255. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/Makefile.am +14 -0
  256. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/Makefile.in +565 -0
  257. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/app.h +96 -0
  258. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/crypto.h +462 -0
  259. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/symbols.h +104 -0
  260. data/vendor/xmlsec1-1.2.18/include/xmlsec/gnutls/x509.h +110 -0
  261. data/vendor/xmlsec1-1.2.18/include/xmlsec/io.h +54 -0
  262. data/vendor/xmlsec1-1.2.18/include/xmlsec/keyinfo.h +285 -0
  263. data/vendor/xmlsec1-1.2.18/include/xmlsec/keys.h +278 -0
  264. data/vendor/xmlsec1-1.2.18/include/xmlsec/keysdata.h +837 -0
  265. data/vendor/xmlsec1-1.2.18/include/xmlsec/keysmngr.h +264 -0
  266. data/vendor/xmlsec1-1.2.18/include/xmlsec/list.h +194 -0
  267. data/vendor/xmlsec1-1.2.18/include/xmlsec/membuf.h +44 -0
  268. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/Makefile.am +16 -0
  269. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/Makefile.in +567 -0
  270. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/app.h +116 -0
  271. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/certkeys.h +42 -0
  272. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/crypto.h +516 -0
  273. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/keysstore.h +48 -0
  274. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/symbols.h +114 -0
  275. data/vendor/xmlsec1-1.2.18/include/xmlsec/mscrypto/x509.h +92 -0
  276. data/vendor/xmlsec1-1.2.18/include/xmlsec/nodeset.h +139 -0
  277. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/Makefile.am +17 -0
  278. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/Makefile.in +568 -0
  279. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/app.h +118 -0
  280. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/bignum.h +37 -0
  281. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/crypto.h +469 -0
  282. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/keysstore.h +46 -0
  283. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/pkikeys.h +44 -0
  284. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/symbols.h +106 -0
  285. data/vendor/xmlsec1-1.2.18/include/xmlsec/nss/x509.h +91 -0
  286. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/Makefile.am +16 -0
  287. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/Makefile.in +567 -0
  288. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/app.h +128 -0
  289. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/bn.h +35 -0
  290. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/crypto.h +561 -0
  291. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/evp.h +44 -0
  292. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/symbols.h +123 -0
  293. data/vendor/xmlsec1-1.2.18/include/xmlsec/openssl/x509.h +109 -0
  294. data/vendor/xmlsec1-1.2.18/include/xmlsec/parser.h +51 -0
  295. data/vendor/xmlsec1-1.2.18/include/xmlsec/private.h +489 -0
  296. data/vendor/xmlsec1-1.2.18/include/xmlsec/private/Makefile.am +12 -0
  297. data/vendor/xmlsec1-1.2.18/include/xmlsec/private/Makefile.in +563 -0
  298. data/vendor/xmlsec1-1.2.18/include/xmlsec/private/xkms.h +121 -0
  299. data/vendor/xmlsec1-1.2.18/include/xmlsec/private/xslt.h +34 -0
  300. data/vendor/xmlsec1-1.2.18/include/xmlsec/skeleton/Makefile.am +13 -0
  301. data/vendor/xmlsec1-1.2.18/include/xmlsec/skeleton/app.h +97 -0
  302. data/vendor/xmlsec1-1.2.18/include/xmlsec/skeleton/crypto.h +40 -0
  303. data/vendor/xmlsec1-1.2.18/include/xmlsec/skeleton/symbols.h +117 -0
  304. data/vendor/xmlsec1-1.2.18/include/xmlsec/soap.h +130 -0
  305. data/vendor/xmlsec1-1.2.18/include/xmlsec/strings.h +610 -0
  306. data/vendor/xmlsec1-1.2.18/include/xmlsec/templates.h +162 -0
  307. data/vendor/xmlsec1-1.2.18/include/xmlsec/transforms.h +994 -0
  308. data/vendor/xmlsec1-1.2.18/include/xmlsec/version.h +61 -0
  309. data/vendor/xmlsec1-1.2.18/include/xmlsec/version.h.in +61 -0
  310. data/vendor/xmlsec1-1.2.18/include/xmlsec/x509.h +80 -0
  311. data/vendor/xmlsec1-1.2.18/include/xmlsec/xkms.h +652 -0
  312. data/vendor/xmlsec1-1.2.18/include/xmlsec/xmldsig.h +281 -0
  313. data/vendor/xmlsec1-1.2.18/include/xmlsec/xmlenc.h +163 -0
  314. data/vendor/xmlsec1-1.2.18/include/xmlsec/xmlsec.h +216 -0
  315. data/vendor/xmlsec1-1.2.18/include/xmlsec/xmltree.h +275 -0
  316. data/vendor/xmlsec1-1.2.18/install-sh +520 -0
  317. data/vendor/xmlsec1-1.2.18/ltmain.sh +8413 -0
  318. data/vendor/xmlsec1-1.2.18/m4/libtool.m4 +7377 -0
  319. data/vendor/xmlsec1-1.2.18/m4/ltoptions.m4 +368 -0
  320. data/vendor/xmlsec1-1.2.18/m4/ltsugar.m4 +123 -0
  321. data/vendor/xmlsec1-1.2.18/m4/ltversion.m4 +23 -0
  322. data/vendor/xmlsec1-1.2.18/m4/lt~obsolete.m4 +92 -0
  323. data/vendor/xmlsec1-1.2.18/man/Makefile.am +52 -0
  324. data/vendor/xmlsec1-1.2.18/man/Makefile.in +582 -0
  325. data/vendor/xmlsec1-1.2.18/man/xmlsec1-config.1 +34 -0
  326. data/vendor/xmlsec1-1.2.18/man/xmlsec1.1 +269 -0
  327. data/vendor/xmlsec1-1.2.18/missing +376 -0
  328. data/vendor/xmlsec1-1.2.18/scripts/build_release.sh +33 -0
  329. data/vendor/xmlsec1-1.2.18/scripts/change-release.sh +34 -0
  330. data/vendor/xmlsec1-1.2.18/scripts/push_release.sh +30 -0
  331. data/vendor/xmlsec1-1.2.18/scripts/remove-gtkdoclink.pl +20 -0
  332. data/vendor/xmlsec1-1.2.18/scripts/test_errors.pl +38 -0
  333. data/vendor/xmlsec1-1.2.18/scripts/test_release.sh +12 -0
  334. data/vendor/xmlsec1-1.2.18/src/Makefile.am +71 -0
  335. data/vendor/xmlsec1-1.2.18/src/Makefile.in +878 -0
  336. data/vendor/xmlsec1-1.2.18/src/app.c +1498 -0
  337. data/vendor/xmlsec1-1.2.18/src/base64.c +1034 -0
  338. data/vendor/xmlsec1-1.2.18/src/bn.c +1060 -0
  339. data/vendor/xmlsec1-1.2.18/src/buffer.c +674 -0
  340. data/vendor/xmlsec1-1.2.18/src/c14n.c +801 -0
  341. data/vendor/xmlsec1-1.2.18/src/dl.c +994 -0
  342. data/vendor/xmlsec1-1.2.18/src/enveloped.c +152 -0
  343. data/vendor/xmlsec1-1.2.18/src/errors.c +242 -0
  344. data/vendor/xmlsec1-1.2.18/src/gcrypt/Makefile.am +55 -0
  345. data/vendor/xmlsec1-1.2.18/src/gcrypt/Makefile.in +764 -0
  346. data/vendor/xmlsec1-1.2.18/src/gcrypt/README +9 -0
  347. data/vendor/xmlsec1-1.2.18/src/gcrypt/app.c +663 -0
  348. data/vendor/xmlsec1-1.2.18/src/gcrypt/asn1.c +602 -0
  349. data/vendor/xmlsec1-1.2.18/src/gcrypt/asn1.h +39 -0
  350. data/vendor/xmlsec1-1.2.18/src/gcrypt/asymkeys.c +1920 -0
  351. data/vendor/xmlsec1-1.2.18/src/gcrypt/ciphers.c +855 -0
  352. data/vendor/xmlsec1-1.2.18/src/gcrypt/crypto.c +315 -0
  353. data/vendor/xmlsec1-1.2.18/src/gcrypt/digests.c +614 -0
  354. data/vendor/xmlsec1-1.2.18/src/gcrypt/globals.h +30 -0
  355. data/vendor/xmlsec1-1.2.18/src/gcrypt/hmac.c +823 -0
  356. data/vendor/xmlsec1-1.2.18/src/gcrypt/kw_aes.c +593 -0
  357. data/vendor/xmlsec1-1.2.18/src/gcrypt/kw_des.c +607 -0
  358. data/vendor/xmlsec1-1.2.18/src/gcrypt/signatures.c +1490 -0
  359. data/vendor/xmlsec1-1.2.18/src/gcrypt/symkeys.c +441 -0
  360. data/vendor/xmlsec1-1.2.18/src/globals.h +25 -0
  361. data/vendor/xmlsec1-1.2.18/src/gnutls/Makefile.am +58 -0
  362. data/vendor/xmlsec1-1.2.18/src/gnutls/Makefile.in +786 -0
  363. data/vendor/xmlsec1-1.2.18/src/gnutls/README +6 -0
  364. data/vendor/xmlsec1-1.2.18/src/gnutls/app.c +998 -0
  365. data/vendor/xmlsec1-1.2.18/src/gnutls/asymkeys.c +455 -0
  366. data/vendor/xmlsec1-1.2.18/src/gnutls/ciphers.c +82 -0
  367. data/vendor/xmlsec1-1.2.18/src/gnutls/crypto.c +351 -0
  368. data/vendor/xmlsec1-1.2.18/src/gnutls/digests.c +112 -0
  369. data/vendor/xmlsec1-1.2.18/src/gnutls/globals.h +31 -0
  370. data/vendor/xmlsec1-1.2.18/src/gnutls/hmac.c +141 -0
  371. data/vendor/xmlsec1-1.2.18/src/gnutls/kw_aes.c +72 -0
  372. data/vendor/xmlsec1-1.2.18/src/gnutls/kw_des.c +51 -0
  373. data/vendor/xmlsec1-1.2.18/src/gnutls/signatures.c +148 -0
  374. data/vendor/xmlsec1-1.2.18/src/gnutls/symkeys.c +125 -0
  375. data/vendor/xmlsec1-1.2.18/src/gnutls/x509.c +1960 -0
  376. data/vendor/xmlsec1-1.2.18/src/gnutls/x509utils.c +1687 -0
  377. data/vendor/xmlsec1-1.2.18/src/gnutls/x509utils.h +143 -0
  378. data/vendor/xmlsec1-1.2.18/src/gnutls/x509vfy.c +802 -0
  379. data/vendor/xmlsec1-1.2.18/src/io.c +496 -0
  380. data/vendor/xmlsec1-1.2.18/src/keyinfo.c +1561 -0
  381. data/vendor/xmlsec1-1.2.18/src/keys.c +1415 -0
  382. data/vendor/xmlsec1-1.2.18/src/keysdata.c +1387 -0
  383. data/vendor/xmlsec1-1.2.18/src/keysmngr.c +745 -0
  384. data/vendor/xmlsec1-1.2.18/src/kw_aes_des.c +493 -0
  385. data/vendor/xmlsec1-1.2.18/src/kw_aes_des.h +148 -0
  386. data/vendor/xmlsec1-1.2.18/src/list.c +534 -0
  387. data/vendor/xmlsec1-1.2.18/src/membuf.c +209 -0
  388. data/vendor/xmlsec1-1.2.18/src/mscrypto/Makefile.am +62 -0
  389. data/vendor/xmlsec1-1.2.18/src/mscrypto/Makefile.in +799 -0
  390. data/vendor/xmlsec1-1.2.18/src/mscrypto/README +39 -0
  391. data/vendor/xmlsec1-1.2.18/src/mscrypto/app.c +1289 -0
  392. data/vendor/xmlsec1-1.2.18/src/mscrypto/certkeys.c +2615 -0
  393. data/vendor/xmlsec1-1.2.18/src/mscrypto/ciphers.c +937 -0
  394. data/vendor/xmlsec1-1.2.18/src/mscrypto/crypto.c +889 -0
  395. data/vendor/xmlsec1-1.2.18/src/mscrypto/csp_calg.h +105 -0
  396. data/vendor/xmlsec1-1.2.18/src/mscrypto/csp_oid.h +114 -0
  397. data/vendor/xmlsec1-1.2.18/src/mscrypto/digests.c +668 -0
  398. data/vendor/xmlsec1-1.2.18/src/mscrypto/globals.h +39 -0
  399. data/vendor/xmlsec1-1.2.18/src/mscrypto/hmac.c +963 -0
  400. data/vendor/xmlsec1-1.2.18/src/mscrypto/keysstore.c +620 -0
  401. data/vendor/xmlsec1-1.2.18/src/mscrypto/kt_rsa.c +631 -0
  402. data/vendor/xmlsec1-1.2.18/src/mscrypto/kw_aes.c +662 -0
  403. data/vendor/xmlsec1-1.2.18/src/mscrypto/kw_des.c +730 -0
  404. data/vendor/xmlsec1-1.2.18/src/mscrypto/mingw-crypt32.def +36 -0
  405. data/vendor/xmlsec1-1.2.18/src/mscrypto/private.h +130 -0
  406. data/vendor/xmlsec1-1.2.18/src/mscrypto/signatures.c +960 -0
  407. data/vendor/xmlsec1-1.2.18/src/mscrypto/symkeys.c +824 -0
  408. data/vendor/xmlsec1-1.2.18/src/mscrypto/x509.c +2281 -0
  409. data/vendor/xmlsec1-1.2.18/src/mscrypto/x509vfy.c +1406 -0
  410. data/vendor/xmlsec1-1.2.18/src/mscrypto/xmlsec-mingw.h +210 -0
  411. data/vendor/xmlsec1-1.2.18/src/nodeset.c +610 -0
  412. data/vendor/xmlsec1-1.2.18/src/nss/Makefile.am +57 -0
  413. data/vendor/xmlsec1-1.2.18/src/nss/Makefile.in +798 -0
  414. data/vendor/xmlsec1-1.2.18/src/nss/README +128 -0
  415. data/vendor/xmlsec1-1.2.18/src/nss/app.c +1598 -0
  416. data/vendor/xmlsec1-1.2.18/src/nss/bignum.c +163 -0
  417. data/vendor/xmlsec1-1.2.18/src/nss/ciphers.c +838 -0
  418. data/vendor/xmlsec1-1.2.18/src/nss/crypto.c +444 -0
  419. data/vendor/xmlsec1-1.2.18/src/nss/digests.c +576 -0
  420. data/vendor/xmlsec1-1.2.18/src/nss/globals.h +24 -0
  421. data/vendor/xmlsec1-1.2.18/src/nss/hmac.c +855 -0
  422. data/vendor/xmlsec1-1.2.18/src/nss/keysstore.c +485 -0
  423. data/vendor/xmlsec1-1.2.18/src/nss/keytrans.c +753 -0
  424. data/vendor/xmlsec1-1.2.18/src/nss/kw_aes.c +681 -0
  425. data/vendor/xmlsec1-1.2.18/src/nss/kw_des.c +663 -0
  426. data/vendor/xmlsec1-1.2.18/src/nss/pkikeys.c +1554 -0
  427. data/vendor/xmlsec1-1.2.18/src/nss/signatures.c +841 -0
  428. data/vendor/xmlsec1-1.2.18/src/nss/symkeys.c +440 -0
  429. data/vendor/xmlsec1-1.2.18/src/nss/x509.c +2223 -0
  430. data/vendor/xmlsec1-1.2.18/src/nss/x509vfy.c +808 -0
  431. data/vendor/xmlsec1-1.2.18/src/openssl/Makefile.am +56 -0
  432. data/vendor/xmlsec1-1.2.18/src/openssl/Makefile.in +790 -0
  433. data/vendor/xmlsec1-1.2.18/src/openssl/README +17 -0
  434. data/vendor/xmlsec1-1.2.18/src/openssl/app.c +1628 -0
  435. data/vendor/xmlsec1-1.2.18/src/openssl/bn.c +163 -0
  436. data/vendor/xmlsec1-1.2.18/src/openssl/ciphers.c +856 -0
  437. data/vendor/xmlsec1-1.2.18/src/openssl/crypto.c +491 -0
  438. data/vendor/xmlsec1-1.2.18/src/openssl/digests.c +682 -0
  439. data/vendor/xmlsec1-1.2.18/src/openssl/evp.c +1559 -0
  440. data/vendor/xmlsec1-1.2.18/src/openssl/globals.h +24 -0
  441. data/vendor/xmlsec1-1.2.18/src/openssl/hmac.c +857 -0
  442. data/vendor/xmlsec1-1.2.18/src/openssl/kt_rsa.c +876 -0
  443. data/vendor/xmlsec1-1.2.18/src/openssl/kw_aes.c +513 -0
  444. data/vendor/xmlsec1-1.2.18/src/openssl/kw_des.c +563 -0
  445. data/vendor/xmlsec1-1.2.18/src/openssl/signatures.c +1065 -0
  446. data/vendor/xmlsec1-1.2.18/src/openssl/symkeys.c +447 -0
  447. data/vendor/xmlsec1-1.2.18/src/openssl/x509.c +2414 -0
  448. data/vendor/xmlsec1-1.2.18/src/openssl/x509vfy.c +1284 -0
  449. data/vendor/xmlsec1-1.2.18/src/parser.c +571 -0
  450. data/vendor/xmlsec1-1.2.18/src/skeleton/Makefile.am +45 -0
  451. data/vendor/xmlsec1-1.2.18/src/skeleton/README +0 -0
  452. data/vendor/xmlsec1-1.2.18/src/skeleton/app.c +499 -0
  453. data/vendor/xmlsec1-1.2.18/src/skeleton/crypto.c +260 -0
  454. data/vendor/xmlsec1-1.2.18/src/skeleton/globals.h +24 -0
  455. data/vendor/xmlsec1-1.2.18/src/soap.c +1322 -0
  456. data/vendor/xmlsec1-1.2.18/src/strings.c +597 -0
  457. data/vendor/xmlsec1-1.2.18/src/templates.c +2091 -0
  458. data/vendor/xmlsec1-1.2.18/src/transforms.c +2902 -0
  459. data/vendor/xmlsec1-1.2.18/src/x509.c +97 -0
  460. data/vendor/xmlsec1-1.2.18/src/xkms.c +4981 -0
  461. data/vendor/xmlsec1-1.2.18/src/xmldsig.c +1795 -0
  462. data/vendor/xmlsec1-1.2.18/src/xmlenc.c +1339 -0
  463. data/vendor/xmlsec1-1.2.18/src/xmlsec.c +185 -0
  464. data/vendor/xmlsec1-1.2.18/src/xmltree.c +1908 -0
  465. data/vendor/xmlsec1-1.2.18/src/xpath.c +1148 -0
  466. data/vendor/xmlsec1-1.2.18/src/xslt.c +617 -0
  467. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/Readme.txt +52 -0
  468. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/bad-alg-enc-element-aes128-kw-3des.xml +29 -0
  469. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/dh-priv-key.der +0 -0
  470. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-3des-kw-aes192.data +9 -0
  471. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-3des-kw-aes192.tmpl +22 -0
  472. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-3des-kw-aes192.xml +30 -0
  473. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes128-kw-3des.data +9 -0
  474. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes128-kw-3des.tmpl +22 -0
  475. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes128-kw-3des.xml +30 -0
  476. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes192-kw-aes256.data +9 -0
  477. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes192-kw-aes256.tmpl +22 -0
  478. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes192-kw-aes256.xml +30 -0
  479. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes256-kt-rsa1_5.data +9 -0
  480. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes256-kt-rsa1_5.tmpl +24 -0
  481. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-content-aes256-kt-rsa1_5.xml +63 -0
  482. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-ka-dh.xml +83 -0
  483. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa1_5.data +9 -0
  484. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa1_5.tmpl +23 -0
  485. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa1_5.xml +61 -0
  486. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa_oaep_sha1.data +9 -0
  487. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa_oaep_sha1.tmpl +22 -0
  488. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa_oaep_sha1.xml +63 -0
  489. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa_oaep_sha256.xml +63 -0
  490. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kt-rsa_oaep_sha512.xml +63 -0
  491. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kw-3des.data +9 -0
  492. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kw-3des.tmpl +22 -0
  493. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-3des-kw-3des.xml +29 -0
  494. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-ka-dh.xml +83 -0
  495. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa1_5.data +9 -0
  496. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa1_5.tmpl +20 -0
  497. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa1_5.xml +61 -0
  498. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa_oaep_sha1.data +9 -0
  499. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa_oaep_sha1.tmpl +22 -0
  500. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kt-rsa_oaep_sha1.xml +63 -0
  501. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes128.data +9 -0
  502. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes128.tmpl +22 -0
  503. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes128.xml +29 -0
  504. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes256.data +9 -0
  505. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes256.tmpl +22 -0
  506. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes128-kw-aes256.xml +29 -0
  507. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-ka-dh.xml +83 -0
  508. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kt-rsa_oaep_sha1.data +9 -0
  509. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kt-rsa_oaep_sha1.tmpl +22 -0
  510. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kt-rsa_oaep_sha1.xml +63 -0
  511. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kw-aes192.data +9 -0
  512. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kw-aes192.tmpl +22 -0
  513. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes192-kw-aes192.xml +29 -0
  514. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes256-ka-dh.xml +83 -0
  515. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes256-kw-aes256.data +9 -0
  516. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes256-kw-aes256.tmpl +22 -0
  517. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-element-aes256-kw-aes256.xml +29 -0
  518. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-3des-kw-aes256.data +9 -0
  519. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-3des-kw-aes256.tmpl +23 -0
  520. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-3des-kw-aes256.xml +32 -0
  521. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes128-kw-aes192.data +9 -0
  522. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes128-kw-aes192.tmpl +21 -0
  523. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes128-kw-aes192.xml +28 -0
  524. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes192-kt-rsa1_5.data +9 -0
  525. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes192-kt-rsa1_5.tmpl +20 -0
  526. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes192-kt-rsa1_5.xml +62 -0
  527. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes256-kt-rsa_oaep_sha1.data +9 -0
  528. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes256-kt-rsa_oaep_sha1.tmpl +22 -0
  529. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/enc-text-aes256-kt-rsa_oaep_sha1.xml +64 -0
  530. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/key.txt +117 -0
  531. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/keys.xml +61 -0
  532. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/payment.xml +9 -0
  533. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/rsa-priv-key.der +0 -0
  534. data/vendor/xmlsec1-1.2.18/tests/01-phaos-xmlenc-3/rsa-priv-key.p12 +0 -0
  535. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/bad-request-name-not-supported.xml +2 -0
  536. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/bad-request-name.xml +10 -0
  537. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/compound-example-1-no-match.xml +7 -0
  538. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/compound-example-1.xml +51 -0
  539. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert1.der +0 -0
  540. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert1.pem +26 -0
  541. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert2.der +0 -0
  542. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert2.pem +25 -0
  543. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert3.der +0 -0
  544. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/cert3.pem +24 -0
  545. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/create-keys.sh +73 -0
  546. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key1-pk8.der +0 -0
  547. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key1.der +0 -0
  548. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key1.p12 +0 -0
  549. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key1.pem +18 -0
  550. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key2-pk8.der +0 -0
  551. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key2.der +0 -0
  552. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key2.p12 +0 -0
  553. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key2.pem +9 -0
  554. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key3-pk8.der +0 -0
  555. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key3.der +0 -0
  556. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key3.p12 +0 -0
  557. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/key3.pem +9 -0
  558. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/openssl.cnf +106 -0
  559. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/req2.pem +11 -0
  560. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/keys/req3.pem +11 -0
  561. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-example-1-bad-service.xml +2 -0
  562. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-example-1-no-match.xml +2 -0
  563. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-example-1.xml +18 -0
  564. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-example-2-no-match.xml +2 -0
  565. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-example-2.xml +39 -0
  566. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-opaque-client-data-no-match.xml +2 -0
  567. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/locate-opaque-client-data.xml +32 -0
  568. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/readme.txt +117 -0
  569. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap11-bad-request-name-msg-invalid.xml +9 -0
  570. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap11-bad-request-name.xml +14 -0
  571. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap11-locate-example-1-no-match.xml +6 -0
  572. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap11-locate-example-1-unsupported.xml +13 -0
  573. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap11-locate-example-1.xml +23 -0
  574. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap12-bad-request-name-msg-invalid.xml +11 -0
  575. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap12-bad-request-name.xml +14 -0
  576. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap12-locate-example-1-no-match.xml +6 -0
  577. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap12-locate-example-1-unsupported.xml +9 -0
  578. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/soap12-locate-example-1.xml +23 -0
  579. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/status-request-success.xml +2 -0
  580. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/status-request.xml +7 -0
  581. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/validate-example-1-no-match.xml +2 -0
  582. data/vendor/xmlsec1-1.2.18/tests/aleksey-xkms-01/validate-example-1.xml +65 -0
  583. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/README +47 -0
  584. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/dtd-hmac-91.dtd +1 -0
  585. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/dtd-hmac-91.tmpl +27 -0
  586. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/dtd-hmac-91.xml +27 -0
  587. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloped-gost.tmpl +31 -0
  588. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloped-gost.xml +42 -0
  589. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-dsa-x509chain.tmpl +18 -0
  590. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-dsa-x509chain.xml +87 -0
  591. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-expired-cert.tmpl +18 -0
  592. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-expired-cert.xml +85 -0
  593. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-hmac-md5-64.tmpl +16 -0
  594. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-hmac-md5-64.xml +15 -0
  595. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-hmac-md5.tmpl +14 -0
  596. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-hmac-md5.xml +13 -0
  597. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-rsa-md5.tmpl +17 -0
  598. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-md5-rsa-md5.xml +85 -0
  599. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-hmac-ripemd160-64.tmpl +16 -0
  600. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-hmac-ripemd160-64.xml +15 -0
  601. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-hmac-ripemd160.tmpl +14 -0
  602. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-hmac-ripemd160.xml +13 -0
  603. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-rsa-ripemd160.tmpl +17 -0
  604. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-ripemd160-rsa-ripemd160.xml +85 -0
  605. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-rsa-x509chain.tmpl +18 -0
  606. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-rsa-x509chain.xml +85 -0
  607. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-hmac-sha1-64.tmpl +16 -0
  608. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-hmac-sha1-64.xml +15 -0
  609. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-hmac-sha1.tmpl +14 -0
  610. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-hmac-sha1.xml +13 -0
  611. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-rsa-sha1.tmpl +17 -0
  612. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha1-rsa-sha1.xml +85 -0
  613. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-hmac-sha224-64.tmpl +16 -0
  614. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-hmac-sha224-64.xml +15 -0
  615. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-hmac-sha224.tmpl +14 -0
  616. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-hmac-sha224.xml +13 -0
  617. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-rsa-sha224.tmpl +17 -0
  618. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha224-rsa-sha224.xml +85 -0
  619. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-hmac-sha256-64.tmpl +16 -0
  620. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-hmac-sha256-64.xml +15 -0
  621. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-hmac-sha256.tmpl +14 -0
  622. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-hmac-sha256.xml +13 -0
  623. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-rsa-sha256.tmpl +17 -0
  624. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha256-rsa-sha256.xml +85 -0
  625. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-hmac-sha384-64.tmpl +16 -0
  626. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-hmac-sha384-64.xml +15 -0
  627. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-hmac-sha384.tmpl +14 -0
  628. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-hmac-sha384.xml +13 -0
  629. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-rsa-sha384.tmpl +17 -0
  630. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha384-rsa-sha384.xml +103 -0
  631. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-hmac-sha512-64.tmpl +16 -0
  632. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-hmac-sha512-64.xml +16 -0
  633. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-hmac-sha512.tmpl +14 -0
  634. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-hmac-sha512.xml +15 -0
  635. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-rsa-sha512.tmpl +17 -0
  636. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/enveloping-sha512-rsa-sha512.xml +104 -0
  637. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/x509data-sn-test.tmpl +27 -0
  638. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/x509data-sn-test.xml +40 -0
  639. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/x509data-test.tmpl +31 -0
  640. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/x509data-test.xml +117 -0
  641. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/xpointer-hmac.tmpl +29 -0
  642. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmldsig-01/xpointer-hmac.xml +28 -0
  643. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes128cbc-keyname.data +1 -0
  644. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes128cbc-keyname.tmpl +11 -0
  645. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes128cbc-keyname.xml +12 -0
  646. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes192cbc-keyname-ref.data +1 -0
  647. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes192cbc-keyname-ref.xml +21 -0
  648. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes192cbc-keyname.data +1 -0
  649. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes192cbc-keyname.tmpl +11 -0
  650. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes192cbc-keyname.xml +12 -0
  651. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes256cbc-keyname.data +1 -0
  652. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes256cbc-keyname.tmpl +10 -0
  653. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-aes256cbc-keyname.xml +12 -0
  654. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-aes192-keyname.data +1 -0
  655. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-aes192-keyname.tmpl +16 -0
  656. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-aes192-keyname.xml +18 -0
  657. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-content.data +7 -0
  658. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-content.tmpl +11 -0
  659. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-content.xml +15 -0
  660. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element-root.data +7 -0
  661. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element-root.tmpl +11 -0
  662. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element-root.xml +15 -0
  663. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element.data +9 -0
  664. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element.tmpl +11 -0
  665. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname-element.xml +17 -0
  666. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname.data +1 -0
  667. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname.tmpl +8 -0
  668. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname.xml +8 -0
  669. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname2.data +1 -0
  670. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname2.tmpl +10 -0
  671. data/vendor/xmlsec1-1.2.18/tests/aleksey-xmlenc-01/enc-des3cbc-keyname2.xml +12 -0
  672. data/vendor/xmlsec1-1.2.18/tests/keys/README +203 -0
  673. data/vendor/xmlsec1-1.2.18/tests/keys/ca2cert.der +0 -0
  674. data/vendor/xmlsec1-1.2.18/tests/keys/ca2cert.pem +66 -0
  675. data/vendor/xmlsec1-1.2.18/tests/keys/ca2key.pem +9 -0
  676. data/vendor/xmlsec1-1.2.18/tests/keys/cacert.der +0 -0
  677. data/vendor/xmlsec1-1.2.18/tests/keys/cacert.pem +72 -0
  678. data/vendor/xmlsec1-1.2.18/tests/keys/cakey.pem +18 -0
  679. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/cacert.pem +72 -0
  680. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/careq.pem +14 -0
  681. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/index.txt +6 -0
  682. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/newcerts/01.pem +65 -0
  683. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/newcerts/02.pem +93 -0
  684. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/newcerts/03.pem +60 -0
  685. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/newcerts/04.pem +60 -0
  686. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/newcerts/05.pem +83 -0
  687. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/private/cakey.pem +18 -0
  688. data/vendor/xmlsec1-1.2.18/tests/keys/demoCA/serial +1 -0
  689. data/vendor/xmlsec1-1.2.18/tests/keys/dsacert.der +0 -0
  690. data/vendor/xmlsec1-1.2.18/tests/keys/dsacert.pem +78 -0
  691. data/vendor/xmlsec1-1.2.18/tests/keys/dsakey.der +0 -0
  692. data/vendor/xmlsec1-1.2.18/tests/keys/dsakey.p12 +0 -0
  693. data/vendor/xmlsec1-1.2.18/tests/keys/dsakey.p8-der +0 -0
  694. data/vendor/xmlsec1-1.2.18/tests/keys/dsakey.p8-pem +8 -0
  695. data/vendor/xmlsec1-1.2.18/tests/keys/dsakey.pem +14 -0
  696. data/vendor/xmlsec1-1.2.18/tests/keys/expiredcert.der +0 -0
  697. data/vendor/xmlsec1-1.2.18/tests/keys/expiredcert.pem +61 -0
  698. data/vendor/xmlsec1-1.2.18/tests/keys/expiredkey.der +0 -0
  699. data/vendor/xmlsec1-1.2.18/tests/keys/expiredkey.p12 +0 -0
  700. data/vendor/xmlsec1-1.2.18/tests/keys/expiredkey.pem +9 -0
  701. data/vendor/xmlsec1-1.2.18/tests/keys/expiredreq.pem +11 -0
  702. data/vendor/xmlsec1-1.2.18/tests/keys/gost2001ca.der +0 -0
  703. data/vendor/xmlsec1-1.2.18/tests/keys/gost2001ca.pem +13 -0
  704. data/vendor/xmlsec1-1.2.18/tests/keys/hmackey.bin +1 -0
  705. data/vendor/xmlsec1-1.2.18/tests/keys/keys.xml +83 -0
  706. data/vendor/xmlsec1-1.2.18/tests/keys/largersacert.der +0 -0
  707. data/vendor/xmlsec1-1.2.18/tests/keys/largersacert.pem +100 -0
  708. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey-win.p12 +0 -0
  709. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey-winxp.p12 +0 -0
  710. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey.der +0 -0
  711. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey.p12 +0 -0
  712. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey.p8-der +0 -0
  713. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey.p8-pem +53 -0
  714. data/vendor/xmlsec1-1.2.18/tests/keys/largersakey.pem +51 -0
  715. data/vendor/xmlsec1-1.2.18/tests/keys/largersareq.pem +30 -0
  716. data/vendor/xmlsec1-1.2.18/tests/keys/merlincert.pem +20 -0
  717. data/vendor/xmlsec1-1.2.18/tests/keys/openssl.cnf +316 -0
  718. data/vendor/xmlsec1-1.2.18/tests/keys/rsacert.der +0 -0
  719. data/vendor/xmlsec1-1.2.18/tests/keys/rsacert.pem +61 -0
  720. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey-win.p12 +0 -0
  721. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey-winxp.p12 +0 -0
  722. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey.der +0 -0
  723. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey.p12 +0 -0
  724. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey.p8-der +0 -0
  725. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey.p8-pem +11 -0
  726. data/vendor/xmlsec1-1.2.18/tests/keys/rsakey.pem +9 -0
  727. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/Readme.txt +20 -0
  728. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-0.txt +15 -0
  729. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-1.txt +15 -0
  730. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-10.txt +15 -0
  731. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-11.txt +15 -0
  732. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-12.txt +15 -0
  733. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-13.txt +15 -0
  734. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-14.txt +15 -0
  735. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-15.txt +0 -0
  736. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-16.txt +0 -0
  737. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-17.txt +15 -0
  738. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-18.txt +15 -0
  739. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-19.txt +15 -0
  740. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-2.txt +15 -0
  741. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-20.txt +15 -0
  742. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-21.txt +15 -0
  743. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-22.txt +15 -0
  744. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-23.txt +15 -0
  745. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-24.txt +1 -0
  746. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-25.txt +0 -0
  747. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-26.txt +15 -0
  748. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-27.txt +430 -0
  749. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-3.txt +15 -0
  750. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-4.txt +15 -0
  751. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-5.txt +15 -0
  752. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-6.txt +1 -0
  753. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-7.txt +1 -0
  754. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-8.txt +15 -0
  755. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/c14n-9.txt +15 -0
  756. data/vendor/xmlsec1-1.2.18/tests/merlin-c14n-three/signature.xml +526 -0
  757. data/vendor/xmlsec1-1.2.18/tests/merlin-exc-c14n-one/Readme.txt +3 -0
  758. data/vendor/xmlsec1-1.2.18/tests/merlin-exc-c14n-one/exc-signature.tmpl +52 -0
  759. data/vendor/xmlsec1-1.2.18/tests/merlin-exc-c14n-one/exc-signature.xml +73 -0
  760. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/Readme.txt +63 -0
  761. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/badb.der +0 -0
  762. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/badb.pem +20 -0
  763. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/balor.der +0 -0
  764. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/balor.pem +20 -0
  765. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/bres.pem +20 -0
  766. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/ca.der +0 -0
  767. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/ca.pem +20 -0
  768. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/lugh-cert.der +0 -0
  769. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/lugh-cert.pem +20 -0
  770. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/lugh.der +0 -0
  771. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/lugh.pem +12 -0
  772. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/macha.der +0 -0
  773. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/macha.pem +20 -0
  774. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/merlin.der +0 -0
  775. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/merlin.pem +21 -0
  776. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/morigu.pem +20 -0
  777. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/nemain.der +0 -0
  778. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/certs/nemain.pem +20 -0
  779. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloped-dsa.tmpl +22 -0
  780. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloped-dsa.xml +43 -0
  781. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-b64-dsa.tmpl +21 -0
  782. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-b64-dsa.xml +42 -0
  783. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-dsa.tmpl +18 -0
  784. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-dsa.xml +39 -0
  785. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-hmac-sha1-40.tmpl +16 -0
  786. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-hmac-sha1-40.xml +17 -0
  787. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-hmac-sha1.tmpl +14 -0
  788. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-hmac-sha1.xml +15 -0
  789. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-rsa.tmpl +18 -0
  790. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-enveloping-rsa.xml +31 -0
  791. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-external-b64-dsa.tmpl +20 -0
  792. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-external-b64-dsa.xml +41 -0
  793. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-external-dsa.tmpl +17 -0
  794. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-external-dsa.xml +38 -0
  795. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-keyname.tmpl +16 -0
  796. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-keyname.xml +17 -0
  797. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-retrievalmethod-rawx509crt.tmpl +16 -0
  798. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-retrievalmethod-rawx509crt.xml +17 -0
  799. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-crt-crl.tmpl +17 -0
  800. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-crt-crl.xml +47 -0
  801. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-crt.tmpl +17 -0
  802. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-crt.xml +38 -0
  803. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-is.tmpl +17 -0
  804. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-is.xml +24 -0
  805. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-ski.tmpl +17 -0
  806. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-ski.xml +21 -0
  807. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-sn.tmpl +17 -0
  808. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature-x509-sn.xml +21 -0
  809. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature.tmpl +245 -0
  810. data/vendor/xmlsec1-1.2.18/tests/merlin-xmldsig-twenty-three/signature.xml +269 -0
  811. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/Readme.txt +117 -0
  812. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/bad-encrypt-content-aes128-cbc-kw-aes192.xml +42 -0
  813. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/decryption-transform-except.xml +83 -0
  814. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/decryption-transform.xml +73 -0
  815. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/dh0.p8 +0 -0
  816. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/dh1.p8 +0 -0
  817. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/dsa.p8 +0 -0
  818. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes128-cbc-kw-aes192.data +27 -0
  819. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes128-cbc-kw-aes192.tmpl +20 -0
  820. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes128-cbc-kw-aes192.xml +45 -0
  821. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes192-cbc-dh-sha512.xml +113 -0
  822. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes256-cbc-prop.data +27 -0
  823. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes256-cbc-prop.tmpl +18 -0
  824. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-aes256-cbc-prop.xml +42 -0
  825. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-tripledes-cbc.data +27 -0
  826. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-tripledes-cbc.tmpl +11 -0
  827. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-content-tripledes-cbc.xml +35 -0
  828. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes128-cbc.data +1 -0
  829. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes128-cbc.tmpl +11 -0
  830. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes128-cbc.xml +12 -0
  831. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes192-cbc-kw-aes256.data +1 -0
  832. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes192-cbc-kw-aes256.tmpl +20 -0
  833. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes192-cbc-kw-aes256.xml +22 -0
  834. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes256-cbc-kw-tripledes.data +1 -0
  835. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes256-cbc-kw-tripledes.tmpl +20 -0
  836. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-aes256-cbc-kw-tripledes.xml +22 -0
  837. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-tripledes-cbc-rsa-oaep-mgf1p-sha256.xml +46 -0
  838. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-tripledes-cbc-rsa-oaep-mgf1p.data +1 -0
  839. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-tripledes-cbc-rsa-oaep-mgf1p.tmpl +21 -0
  840. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-data-tripledes-cbc-rsa-oaep-mgf1p.xml +43 -0
  841. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes128-cbc-rsa-1_5.data +27 -0
  842. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes128-cbc-rsa-1_5.tmpl +19 -0
  843. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes128-cbc-rsa-1_5.xml +63 -0
  844. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes192-cbc-ref.data +36 -0
  845. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes192-cbc-ref.xml +42 -0
  846. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes256-cbc-carried-kw-aes256.xml +57 -0
  847. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes256-cbc-kw-aes256-dh-ripemd160.xml +122 -0
  848. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes256-cbc-retrieved-kw-aes256.data +40 -0
  849. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-aes256-cbc-retrieved-kw-aes256.xml +47 -0
  850. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-tripledes-cbc-kw-aes128.data +27 -0
  851. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-tripledes-cbc-kw-aes128.tmpl +20 -0
  852. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encrypt-element-tripledes-cbc-kw-aes128.xml +43 -0
  853. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-hmac-sha256-dh.xml +98 -0
  854. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-hmac-sha256-kw-tripledes-dh.xml +108 -0
  855. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-hmac-sha256-rsa-1_5.xml +46 -0
  856. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-hmac-sha256-rsa-oaep-mgf1p.xml +51 -0
  857. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-ripemd160-hmac-ripemd160-kw-tripledes.tmpl +25 -0
  858. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-ripemd160-hmac-ripemd160-kw-tripledes.xml +27 -0
  859. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-sha256-hmac-sha256-kw-aes128.xml +27 -0
  860. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-sha384-hmac-sha384-kw-aes192.xml +27 -0
  861. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/encsig-sha512-hmac-sha512-kw-aes256.xml +28 -0
  862. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/ids.p12 +0 -0
  863. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/keys.xml +42 -0
  864. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/plaintext.xml +24 -0
  865. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsa.p8 +0 -0
  866. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapriv.der +0 -0
  867. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapriv.p12 +0 -0
  868. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapriv.p8-der +0 -0
  869. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapriv.p8-pem +17 -0
  870. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapriv.pem +15 -0
  871. data/vendor/xmlsec1-1.2.18/tests/merlin-xmlenc-five/rsapub.pem +6 -0
  872. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/Readme.txt +23 -0
  873. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-spec-c14n-0.txt +11 -0
  874. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-spec-c14n-1.txt +0 -0
  875. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-spec-c14n-2.txt +25 -0
  876. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-spec.tmpl +50 -0
  877. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-spec.xml +122 -0
  878. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-xfdl-c14n-0.txt +3986 -0
  879. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-xfdl.tmpl +4153 -0
  880. data/vendor/xmlsec1-1.2.18/tests/merlin-xpath-filter2-three/sign-xfdl.xml +4225 -0
  881. data/vendor/xmlsec1-1.2.18/tests/nss.supp +220 -0
  882. data/vendor/xmlsec1-1.2.18/tests/nssdb/cert8.db +0 -0
  883. data/vendor/xmlsec1-1.2.18/tests/nssdb/key3.db +0 -0
  884. data/vendor/xmlsec1-1.2.18/tests/nssdb/secmod.db +0 -0
  885. data/vendor/xmlsec1-1.2.18/tests/openssl.supp +63 -0
  886. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/README.txt +248 -0
  887. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/crl.der +0 -0
  888. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/dsa-ca-cert.der +0 -0
  889. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/dsa-cert.der +0 -0
  890. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/enc-dsa-key.der +0 -0
  891. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/enc-rsa-key.der +0 -0
  892. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/hmackey.bin +1 -0
  893. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/rsa-ca-cert.der +0 -0
  894. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/certs/rsa-cert.der +0 -0
  895. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/document-stylesheet.xml +7 -0
  896. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/document.b64 +4 -0
  897. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/document.xml +6 -0
  898. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/document.xsl +45 -0
  899. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-big.xml +39 -0
  900. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-dsa-detached.xml +1 -0
  901. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-dsa-enveloped.xml +6 -0
  902. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-dsa-enveloping.xml +6 -0
  903. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-dsa-manifest.xml +1 -0
  904. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-hmac-md5-c14n-enveloping.xml +6 -0
  905. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-hmac-sha1-40-c14n-comments-detached.xml +1 -0
  906. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-hmac-sha1-40-exclusive-c14n-comments-detached.xml +1 -0
  907. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-hmac-sha1-exclusive-c14n-comments-detached.xml +1 -0
  908. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-hmac-sha1-exclusive-c14n-enveloped.xml +6 -0
  909. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached-b64-transform.xml +1 -0
  910. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached-xpath-transform.xml +1 -0
  911. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached-xslt-transform-bad-retrieval-method.xml +6 -0
  912. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached-xslt-transform-retrieval-method.xml +39 -0
  913. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached-xslt-transform.xml +39 -0
  914. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-detached.xml +1 -0
  915. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-enveloped-bad-digest-val.xml +6 -0
  916. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-enveloped-bad-sig.xml +6 -0
  917. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-enveloped.xml +6 -0
  918. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-enveloping.xml +6 -0
  919. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest-x509-data-cert-chain.xml +1 -0
  920. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest-x509-data-cert.xml +1 -0
  921. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest-x509-data-issuer-serial.xml +1 -0
  922. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest-x509-data-ski.xml +1 -0
  923. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest-x509-data-subject-name.xml +1 -0
  924. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-manifest.xml +1 -0
  925. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-xpath-transform-enveloped.xml +6 -0
  926. data/vendor/xmlsec1-1.2.18/tests/phaos-xmldsig-three/signature-rsa-~x509-data-crl.xml +1 -0
  927. data/vendor/xmlsec1-1.2.18/tests/testDSig.sh +875 -0
  928. data/vendor/xmlsec1-1.2.18/tests/testEnc.sh +411 -0
  929. data/vendor/xmlsec1-1.2.18/tests/testKeys.sh +69 -0
  930. data/vendor/xmlsec1-1.2.18/tests/testRes.sh +20 -0
  931. data/vendor/xmlsec1-1.2.18/tests/testXKMS.sh +129 -0
  932. data/vendor/xmlsec1-1.2.18/tests/testrun.sh +443 -0
  933. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/c14n11/xml-base-input.xml +17 -0
  934. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-1.tmpl +2 -0
  935. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-1.xml +2 -0
  936. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-2.tmpl +2 -0
  937. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-2.xml +2 -0
  938. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-3.tmpl +2 -0
  939. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/defCan-3.xml +2 -0
  940. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-1-SUN.xml +21 -0
  941. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-2-SUN.xml +21 -0
  942. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-3-SUN.xml +21 -0
  943. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-4-SUN.xml +21 -0
  944. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-5-SUN.xml +21 -0
  945. data/vendor/xmlsec1-1.2.18/tests/xmldsig2ed-tests/xpointer-6-SUN.xml +21 -0
  946. data/vendor/xmlsec1-1.2.18/win32/Makefile.msvc +699 -0
  947. data/vendor/xmlsec1-1.2.18/win32/README.txt +168 -12
  948. data/vendor/xmlsec1-1.2.18/win32/configure.js +395 -0
  949. data/vendor/xmlsec1-1.2.18/win32/libxmlsec.def.src +25 -0
  950. data/vendor/xmlsec1-1.2.18/win32/mycfg.bat +21 -0
  951. data/vendor/xmlsec1-1.2.18/xmlsec-config.in +243 -0
  952. data/vendor/xmlsec1-1.2.18/xmlsec-gcrypt.pc.in +11 -0
  953. data/vendor/xmlsec1-1.2.18/xmlsec-gnutls.pc.in +11 -0
  954. data/vendor/xmlsec1-1.2.18/xmlsec-nss.pc.in +11 -0
  955. data/vendor/xmlsec1-1.2.18/xmlsec-openssl.pc.in +11 -0
  956. data/vendor/xmlsec1-1.2.18/xmlsec.pc.in +11 -0
  957. data/vendor/xmlsec1-1.2.18/xmlsec.spec.in +185 -0
  958. data/vendor/xmlsec1-1.2.18/xmlsec1-config +243 -0
  959. data/vendor/xmlsec1-1.2.18/xmlsec1-gcrypt.pc +11 -0
  960. data/vendor/xmlsec1-1.2.18/xmlsec1-gnutls.pc +11 -0
  961. data/vendor/xmlsec1-1.2.18/xmlsec1-nss.pc +11 -0
  962. data/vendor/xmlsec1-1.2.18/xmlsec1-openssl.pc +11 -0
  963. data/vendor/xmlsec1-1.2.18/xmlsec1.m4 +172 -0
  964. data/vendor/xmlsec1-1.2.18/xmlsec1.pc +11 -0
  965. data/vendor/xmlsec1-1.2.18/xmlsec1.spec +185 -0
  966. data/vendor/xmlsec1-1.2.18/xmlsec1Conf.sh +13 -0
  967. data/vendor/xmlsec1-1.2.18/xmlsecConf.sh.in +13 -0
  968. data/xmlsec-shim.gemspec +18 -0
  969. metadata +1014 -0
@@ -0,0 +1,1490 @@
1
+ /**
2
+ * XMLSec library
3
+ *
4
+ * This is free software; see Copyright file in the source
5
+ * distribution for preciese wording.
6
+ *
7
+ * Copyright (C) 2010 Aleksey Sanin <aleksey@aleksey.com>
8
+ */
9
+ #include "globals.h"
10
+
11
+ #include <string.h>
12
+
13
+ #include <gcrypt.h>
14
+
15
+ #include <xmlsec/xmlsec.h>
16
+ #include <xmlsec/keys.h>
17
+ #include <xmlsec/transforms.h>
18
+ #include <xmlsec/errors.h>
19
+
20
+ #include <xmlsec/gcrypt/crypto.h>
21
+
22
+
23
+ /**************************************************************************
24
+ *
25
+ * Forward declarations for actual sign/verify implementations
26
+ *
27
+ *****************************************************************************/
28
+ typedef int (*xmlSecGCryptPkSignMethod) (int digest,
29
+ xmlSecKeyDataPtr key_data,
30
+ const xmlSecByte* dgst,
31
+ xmlSecSize dgstSize,
32
+ xmlSecBufferPtr out);
33
+ typedef int (*xmlSecGCryptPkVerifyMethod) (int digest,
34
+ xmlSecKeyDataPtr key_data,
35
+ const xmlSecByte* dgst,
36
+ xmlSecSize dgstSize,
37
+ const xmlSecByte* data,
38
+ xmlSecSize dataSize);
39
+
40
+ #ifndef XMLSEC_NO_DSA
41
+ static int xmlSecGCryptDsaPkSign (int digest,
42
+ xmlSecKeyDataPtr key_data,
43
+ const xmlSecByte* dgst,
44
+ xmlSecSize dgstSize,
45
+ xmlSecBufferPtr out);
46
+ static int xmlSecGCryptDsaPkVerify (int digest,
47
+ xmlSecKeyDataPtr key_data,
48
+ const xmlSecByte* dgst,
49
+ xmlSecSize dgstSize,
50
+ const xmlSecByte* data,
51
+ xmlSecSize dataSize);
52
+ #endif /* XMLSEC_NO_DSA */
53
+
54
+ #ifndef XMLSEC_NO_RSA
55
+ static int xmlSecGCryptRsaPkcs1PkSign (int digest,
56
+ xmlSecKeyDataPtr key_data,
57
+ const xmlSecByte* dgst,
58
+ xmlSecSize dgstSize,
59
+ xmlSecBufferPtr out);
60
+ static int xmlSecGCryptRsaPkcs1PkVerify (int digest,
61
+ xmlSecKeyDataPtr key_data,
62
+ const xmlSecByte* dgst,
63
+ xmlSecSize dgstSize,
64
+ const xmlSecByte* data,
65
+ xmlSecSize dataSize);
66
+ #endif /* XMLSEC_NO_RSA */
67
+
68
+
69
+ /**************************************************************************
70
+ *
71
+ * Internal GCrypt signatures ctx
72
+ *
73
+ *****************************************************************************/
74
+ typedef struct _xmlSecGCryptPkSignatureCtx xmlSecGCryptPkSignatureCtx,
75
+ *xmlSecGCryptPkSignatureCtxPtr;
76
+
77
+
78
+ struct _xmlSecGCryptPkSignatureCtx {
79
+ int digest;
80
+ xmlSecKeyDataId keyId;
81
+ xmlSecGCryptPkSignMethod sign;
82
+ xmlSecGCryptPkVerifyMethod verify;
83
+
84
+ gcry_md_hd_t digestCtx;
85
+ xmlSecKeyDataPtr key_data;
86
+
87
+ xmlSecByte dgst[XMLSEC_GCRYPT_MAX_DIGEST_SIZE];
88
+ xmlSecSize dgstSize; /* dgst size in bytes */
89
+ };
90
+
91
+
92
+ /******************************************************************************
93
+ *
94
+ * Pk Signature transforms
95
+ *
96
+ * xmlSecGCryptPkSignatureCtx is located after xmlSecTransform
97
+ *
98
+ *****************************************************************************/
99
+ #define xmlSecGCryptPkSignatureSize \
100
+ (sizeof(xmlSecTransform) + sizeof(xmlSecGCryptPkSignatureCtx))
101
+ #define xmlSecGCryptPkSignatureGetCtx(transform) \
102
+ ((xmlSecGCryptPkSignatureCtxPtr)(((xmlSecByte*)(transform)) + sizeof(xmlSecTransform)))
103
+
104
+ static int xmlSecGCryptPkSignatureCheckId (xmlSecTransformPtr transform);
105
+ static int xmlSecGCryptPkSignatureInitialize (xmlSecTransformPtr transform);
106
+ static void xmlSecGCryptPkSignatureFinalize (xmlSecTransformPtr transform);
107
+ static int xmlSecGCryptPkSignatureSetKeyReq (xmlSecTransformPtr transform,
108
+ xmlSecKeyReqPtr keyReq);
109
+ static int xmlSecGCryptPkSignatureSetKey (xmlSecTransformPtr transform,
110
+ xmlSecKeyPtr key);
111
+ static int xmlSecGCryptPkSignatureVerify (xmlSecTransformPtr transform,
112
+ const xmlSecByte* data,
113
+ xmlSecSize dataSize,
114
+ xmlSecTransformCtxPtr transformCtx);
115
+ static int xmlSecGCryptPkSignatureExecute (xmlSecTransformPtr transform,
116
+ int last,
117
+ xmlSecTransformCtxPtr transformCtx);
118
+
119
+ static int
120
+ xmlSecGCryptPkSignatureCheckId(xmlSecTransformPtr transform) {
121
+ #ifndef XMLSEC_NO_DSA
122
+
123
+ #ifndef XMLSEC_NO_SHA1
124
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformDsaSha1Id)) {
125
+ return(1);
126
+ } else
127
+ #endif /* XMLSEC_NO_SHA1 */
128
+
129
+ #endif /* XMLSEC_NO_DSA */
130
+
131
+ #ifndef XMLSEC_NO_RSA
132
+
133
+ #ifndef XMLSEC_NO_MD5
134
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaMd5Id)) {
135
+ return(1);
136
+ } else
137
+ #endif /* XMLSEC_NO_MD5 */
138
+
139
+ #ifndef XMLSEC_NO_RIPEMD160
140
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaRipemd160Id)) {
141
+ return(1);
142
+ } else
143
+ #endif /* XMLSEC_NO_RIPEMD160 */
144
+
145
+ #ifndef XMLSEC_NO_SHA1
146
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha1Id)) {
147
+ return(1);
148
+ } else
149
+ #endif /* XMLSEC_NO_SHA1 */
150
+
151
+ #ifndef XMLSEC_NO_SHA256
152
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha256Id)) {
153
+ return(1);
154
+ } else
155
+ #endif /* XMLSEC_NO_SHA256 */
156
+
157
+ #ifndef XMLSEC_NO_SHA384
158
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha384Id)) {
159
+ return(1);
160
+ } else
161
+ #endif /* XMLSEC_NO_SHA384 */
162
+
163
+ #ifndef XMLSEC_NO_SHA512
164
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha512Id)) {
165
+ return(1);
166
+ } else
167
+ #endif /* XMLSEC_NO_SHA512 */
168
+
169
+ #endif /* XMLSEC_NO_RSA */
170
+
171
+ {
172
+ return(0);
173
+ }
174
+
175
+ return(0);
176
+ }
177
+
178
+ static int
179
+ xmlSecGCryptPkSignatureInitialize(xmlSecTransformPtr transform) {
180
+ xmlSecGCryptPkSignatureCtxPtr ctx;
181
+ gcry_error_t err;
182
+
183
+ xmlSecAssert2(xmlSecGCryptPkSignatureCheckId(transform), -1);
184
+ xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize), -1);
185
+
186
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
187
+ xmlSecAssert2(ctx != NULL, -1);
188
+
189
+ memset(ctx, 0, sizeof(xmlSecGCryptPkSignatureCtx));
190
+
191
+ #ifndef XMLSEC_NO_DSA
192
+
193
+ #ifndef XMLSEC_NO_SHA1
194
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformDsaSha1Id)) {
195
+ ctx->digest = GCRY_MD_SHA1;
196
+ ctx->keyId = xmlSecGCryptKeyDataDsaId;
197
+ ctx->sign = xmlSecGCryptDsaPkSign;
198
+ ctx->verify = xmlSecGCryptDsaPkVerify;
199
+ } else
200
+ #endif /* XMLSEC_NO_SHA1 */
201
+
202
+ #endif /* XMLSEC_NO_DSA */
203
+
204
+ #ifndef XMLSEC_NO_RSA
205
+
206
+ #ifndef XMLSEC_NO_MD5
207
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaMd5Id)) {
208
+ ctx->digest = GCRY_MD_MD5;
209
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
210
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
211
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
212
+ } else
213
+ #endif /* XMLSEC_NO_MD5 */
214
+
215
+ #ifndef XMLSEC_NO_RIPEMD160
216
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaRipemd160Id)) {
217
+ ctx->digest = GCRY_MD_RMD160;
218
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
219
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
220
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
221
+ } else
222
+ #endif /* XMLSEC_NO_RIPEMD160 */
223
+
224
+ #ifndef XMLSEC_NO_SHA1
225
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha1Id)) {
226
+ ctx->digest = GCRY_MD_SHA1;
227
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
228
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
229
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
230
+ } else
231
+ #endif /* XMLSEC_NO_SHA1 */
232
+
233
+ #ifndef XMLSEC_NO_SHA256
234
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha256Id)) {
235
+ ctx->digest = GCRY_MD_SHA256;
236
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
237
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
238
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
239
+ } else
240
+ #endif /* XMLSEC_NO_SHA256 */
241
+
242
+ #ifndef XMLSEC_NO_SHA384
243
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha384Id)) {
244
+ ctx->digest = GCRY_MD_SHA384;
245
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
246
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
247
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
248
+ } else
249
+ #endif /* XMLSEC_NO_SHA384 */
250
+
251
+ #ifndef XMLSEC_NO_SHA512
252
+ if(xmlSecTransformCheckId(transform, xmlSecGCryptTransformRsaSha512Id)) {
253
+ ctx->digest = GCRY_MD_SHA512;
254
+ ctx->keyId = xmlSecGCryptKeyDataRsaId;
255
+ ctx->sign = xmlSecGCryptRsaPkcs1PkSign;
256
+ ctx->verify = xmlSecGCryptRsaPkcs1PkVerify;
257
+ } else
258
+ #endif /* XMLSEC_NO_SHA512 */
259
+
260
+ #endif /* XMLSEC_NO_RSA */
261
+
262
+ if(1) {
263
+ xmlSecError(XMLSEC_ERRORS_HERE,
264
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
265
+ NULL,
266
+ XMLSEC_ERRORS_R_INVALID_TRANSFORM,
267
+ XMLSEC_ERRORS_NO_MESSAGE);
268
+ return(-1);
269
+ }
270
+
271
+ /* create digest ctx */
272
+ err = gcry_md_open(&ctx->digestCtx, ctx->digest, GCRY_MD_FLAG_SECURE); /* we are paranoid */
273
+ if(err != GPG_ERR_NO_ERROR) {
274
+ xmlSecError(XMLSEC_ERRORS_HERE,
275
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
276
+ "gcry_md_open",
277
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
278
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
279
+ return(-1);
280
+ }
281
+
282
+ /* done */
283
+ return(0);
284
+ }
285
+
286
+ static void
287
+ xmlSecGCryptPkSignatureFinalize(xmlSecTransformPtr transform) {
288
+ xmlSecGCryptPkSignatureCtxPtr ctx;
289
+
290
+ xmlSecAssert(xmlSecGCryptPkSignatureCheckId(transform));
291
+ xmlSecAssert(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize));
292
+
293
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
294
+ xmlSecAssert(ctx != NULL);
295
+
296
+ if(ctx->key_data != NULL) {
297
+ xmlSecKeyDataDestroy(ctx->key_data);
298
+ }
299
+ if(ctx->digestCtx != NULL) {
300
+ gcry_md_close(ctx->digestCtx);
301
+ }
302
+
303
+ memset(ctx, 0, sizeof(xmlSecGCryptPkSignatureCtx));
304
+ }
305
+
306
+ static int
307
+ xmlSecGCryptPkSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
308
+ xmlSecGCryptPkSignatureCtxPtr ctx;
309
+ xmlSecKeyDataPtr key_data;
310
+
311
+ xmlSecAssert2(xmlSecGCryptPkSignatureCheckId(transform), -1);
312
+ xmlSecAssert2((transform->operation == xmlSecTransformOperationSign) || (transform->operation == xmlSecTransformOperationVerify), -1);
313
+ xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize), -1);
314
+ xmlSecAssert2(key != NULL, -1);
315
+
316
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
317
+ xmlSecAssert2(ctx != NULL, -1);
318
+ xmlSecAssert2(ctx->keyId != NULL, -1);
319
+ xmlSecAssert2(xmlSecKeyCheckId(key, ctx->keyId), -1);
320
+
321
+ key_data = xmlSecKeyGetValue(key);
322
+ xmlSecAssert2(key_data != NULL, -1);
323
+
324
+ if(ctx->key_data != NULL) {
325
+ xmlSecKeyDataDestroy(ctx->key_data);
326
+ }
327
+
328
+ ctx->key_data = xmlSecKeyDataDuplicate(key_data);
329
+ if(ctx->key_data == NULL) {
330
+ xmlSecError(XMLSEC_ERRORS_HERE,
331
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
332
+ "xmlSecKeyDataDuplicate",
333
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
334
+ XMLSEC_ERRORS_NO_MESSAGE);
335
+ return(-1);
336
+ }
337
+
338
+ return(0);
339
+ }
340
+
341
+ static int
342
+ xmlSecGCryptPkSignatureSetKeyReq(xmlSecTransformPtr transform, xmlSecKeyReqPtr keyReq) {
343
+ xmlSecGCryptPkSignatureCtxPtr ctx;
344
+
345
+ xmlSecAssert2(xmlSecGCryptPkSignatureCheckId(transform), -1);
346
+ xmlSecAssert2((transform->operation == xmlSecTransformOperationSign) || (transform->operation == xmlSecTransformOperationVerify), -1);
347
+ xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize), -1);
348
+ xmlSecAssert2(keyReq != NULL, -1);
349
+
350
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
351
+ xmlSecAssert2(ctx != NULL, -1);
352
+ xmlSecAssert2(ctx->keyId != NULL, -1);
353
+
354
+ keyReq->keyId = ctx->keyId;
355
+ if(transform->operation == xmlSecTransformOperationSign) {
356
+ keyReq->keyType = xmlSecKeyDataTypePrivate;
357
+ keyReq->keyUsage = xmlSecKeyUsageSign;
358
+ } else {
359
+ keyReq->keyType = xmlSecKeyDataTypePublic;
360
+ keyReq->keyUsage = xmlSecKeyUsageVerify;
361
+ }
362
+ return(0);
363
+ }
364
+
365
+
366
+ static int
367
+ xmlSecGCryptPkSignatureVerify(xmlSecTransformPtr transform,
368
+ const xmlSecByte* data, xmlSecSize dataSize,
369
+ xmlSecTransformCtxPtr transformCtx) {
370
+ xmlSecGCryptPkSignatureCtxPtr ctx;
371
+ int ret;
372
+
373
+ xmlSecAssert2(xmlSecGCryptPkSignatureCheckId(transform), -1);
374
+ xmlSecAssert2(transform->operation == xmlSecTransformOperationVerify, -1);
375
+ xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize), -1);
376
+ xmlSecAssert2(transform->status == xmlSecTransformStatusFinished, -1);
377
+ xmlSecAssert2(data != NULL, -1);
378
+ xmlSecAssert2(transformCtx != NULL, -1);
379
+
380
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
381
+ xmlSecAssert2(ctx != NULL, -1);
382
+ xmlSecAssert2(ctx->sign != NULL, -1);
383
+ xmlSecAssert2(ctx->verify != NULL, -1);
384
+ xmlSecAssert2(ctx->dgstSize > 0, -1);
385
+ xmlSecAssert2(ctx->key_data != NULL, -1);
386
+
387
+ ret = ctx->verify(ctx->digest, ctx->key_data, ctx->dgst, ctx->dgstSize, data, dataSize);
388
+ if(ret < 0) {
389
+ xmlSecError(XMLSEC_ERRORS_HERE,
390
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
391
+ "ctx->verify",
392
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
393
+ XMLSEC_ERRORS_NO_MESSAGE);
394
+ return(-1);
395
+ }
396
+
397
+ /* check result */
398
+ if(ret == 1) {
399
+ transform->status = xmlSecTransformStatusOk;
400
+ } else {
401
+ xmlSecError(XMLSEC_ERRORS_HERE,
402
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
403
+ "ctx->verify",
404
+ XMLSEC_ERRORS_R_DATA_NOT_MATCH,
405
+ "signature do not match");
406
+ transform->status = xmlSecTransformStatusFail;
407
+ }
408
+
409
+ /* done */
410
+ return(0);
411
+ }
412
+
413
+ static int
414
+ xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr transformCtx) {
415
+ xmlSecGCryptPkSignatureCtxPtr ctx;
416
+ xmlSecBufferPtr in, out;
417
+ xmlSecSize inSize;
418
+ xmlSecSize outSize;
419
+ int ret;
420
+
421
+ xmlSecAssert2(xmlSecGCryptPkSignatureCheckId(transform), -1);
422
+ xmlSecAssert2((transform->operation == xmlSecTransformOperationSign) || (transform->operation == xmlSecTransformOperationVerify), -1);
423
+ xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecGCryptPkSignatureSize), -1);
424
+ xmlSecAssert2(transformCtx != NULL, -1);
425
+
426
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
427
+ xmlSecAssert2(ctx != NULL, -1);
428
+ xmlSecAssert2(ctx->sign != NULL, -1);
429
+ xmlSecAssert2(ctx->verify != NULL, -1);
430
+
431
+ in = &(transform->inBuf);
432
+ out = &(transform->outBuf);
433
+ inSize = xmlSecBufferGetSize(in);
434
+ outSize = xmlSecBufferGetSize(out);
435
+
436
+ ctx = xmlSecGCryptPkSignatureGetCtx(transform);
437
+ xmlSecAssert2(ctx != NULL, -1);
438
+ xmlSecAssert2(ctx->key_data != NULL, -1);
439
+
440
+ if(transform->status == xmlSecTransformStatusNone) {
441
+ /* do nothing, already initialized */
442
+ transform->status = xmlSecTransformStatusWorking;
443
+ }
444
+
445
+ if(transform->status == xmlSecTransformStatusWorking) {
446
+ xmlSecAssert2(outSize == 0, -1);
447
+
448
+ /* update the digest */
449
+ if(inSize > 0) {
450
+ gcry_md_write(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
451
+
452
+ ret = xmlSecBufferRemoveHead(in, inSize);
453
+ if(ret < 0) {
454
+ xmlSecError(XMLSEC_ERRORS_HERE,
455
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
456
+ "xmlSecBufferRemoveHead",
457
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
458
+ "size=%d", inSize);
459
+ return(-1);
460
+ }
461
+ }
462
+
463
+ /* generate digest and signature */
464
+ if(last != 0) {
465
+ xmlSecByte* buf;
466
+
467
+ /* get the final digest */
468
+ gcry_md_final(ctx->digestCtx);
469
+ buf = gcry_md_read(ctx->digestCtx, ctx->digest);
470
+ if(buf == NULL) {
471
+ xmlSecError(XMLSEC_ERRORS_HERE,
472
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
473
+ "gcry_md_read",
474
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
475
+ XMLSEC_ERRORS_NO_MESSAGE);
476
+ return(-1);
477
+ }
478
+
479
+ /* copy it to our internal buffer */
480
+ ctx->dgstSize = gcry_md_get_algo_dlen(ctx->digest);
481
+ xmlSecAssert2(ctx->dgstSize > 0, -1);
482
+ xmlSecAssert2(ctx->dgstSize <= sizeof(ctx->dgst), -1);
483
+ memcpy(ctx->dgst, buf, ctx->dgstSize);
484
+
485
+ xmlSecAssert2(outSize == 0, -1);
486
+ if(transform->operation == xmlSecTransformOperationSign) {
487
+ ret = ctx->sign(ctx->digest, ctx->key_data, ctx->dgst, ctx->dgstSize, out);
488
+ if(ret < 0) {
489
+ xmlSecError(XMLSEC_ERRORS_HERE,
490
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
491
+ "ctx->sign",
492
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
493
+ XMLSEC_ERRORS_NO_MESSAGE);
494
+ return(-1);
495
+ }
496
+ }
497
+
498
+ /* done */
499
+ transform->status = xmlSecTransformStatusFinished;
500
+ }
501
+ }
502
+
503
+ if((transform->status == xmlSecTransformStatusWorking) || (transform->status == xmlSecTransformStatusFinished)) {
504
+ /* the only way we can get here is if there is no input */
505
+ xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
506
+ } else {
507
+ xmlSecError(XMLSEC_ERRORS_HERE,
508
+ xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
509
+ NULL,
510
+ XMLSEC_ERRORS_R_INVALID_STATUS,
511
+ "status=%d", transform->status);
512
+ return(-1);
513
+ }
514
+
515
+ return(0);
516
+ }
517
+
518
+ /*****************************************************************************
519
+ *
520
+ * Helper
521
+ *
522
+ ****************************************************************************/
523
+ static int
524
+ xmlSecGCryptAppendMpi(gcry_mpi_t a, xmlSecBufferPtr out, xmlSecSize min_size) {
525
+ xmlSecSize outSize;
526
+ size_t written;
527
+ gpg_error_t err;
528
+ int ret;
529
+
530
+ xmlSecAssert2(a != NULL, -1);
531
+ xmlSecAssert2(out != NULL, -1);
532
+
533
+ /* current size */
534
+ outSize = xmlSecBufferGetSize(out);
535
+
536
+ /* figure out how much space we need */
537
+ written = 0;
538
+ err = gcry_mpi_print(GCRYMPI_FMT_USG, NULL, 0, &written, a);
539
+ if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
540
+ xmlSecError(XMLSEC_ERRORS_HERE,
541
+ NULL,
542
+ "gcry_mpi_print",
543
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
544
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
545
+ return(-1);
546
+ }
547
+
548
+ /* add zeros at the beggining (if needed) */
549
+ if((min_size > 0) && (written < min_size)) {
550
+ outSize += (min_size - written);
551
+ }
552
+
553
+ /* allocate space */
554
+ ret = xmlSecBufferSetMaxSize(out, outSize + written + 1);
555
+ if(ret < 0) {
556
+ xmlSecError(XMLSEC_ERRORS_HERE,
557
+ NULL,
558
+ "xmlSecBufferSetMaxSize",
559
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
560
+ "size=%d", (int)(outSize + written + 1));
561
+ return(-1);
562
+ }
563
+ xmlSecAssert2(xmlSecBufferGetMaxSize(out) > outSize, -1);
564
+
565
+ /* add zeros at the beggining (if needed) */
566
+ if((min_size > 0) && (written < min_size)) {
567
+ xmlSecSize ii;
568
+ xmlSecByte * p = xmlSecBufferGetData(out);
569
+
570
+ for(ii = 0; ii < (min_size - written); ++ii) {
571
+ p[outSize - ii - 1] = 0;
572
+ }
573
+ }
574
+
575
+ /* write out */
576
+ written = 0;
577
+ err = gcry_mpi_print(GCRYMPI_FMT_USG,
578
+ xmlSecBufferGetData(out) + outSize,
579
+ xmlSecBufferGetMaxSize(out) - outSize,
580
+ &written, a);
581
+ if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
582
+ xmlSecError(XMLSEC_ERRORS_HERE,
583
+ NULL,
584
+ "gcry_mpi_print",
585
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
586
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
587
+ return(-1);
588
+ }
589
+
590
+ /* reset size */
591
+ ret = xmlSecBufferSetSize(out, outSize + written);
592
+ if(ret < 0) {
593
+ xmlSecError(XMLSEC_ERRORS_HERE,
594
+ NULL,
595
+ "xmlSecBufferSetSize",
596
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
597
+ "size=%d",
598
+ (int)(outSize + written));
599
+ return(-1);
600
+ }
601
+
602
+ /* done */
603
+ return(0);
604
+ }
605
+
606
+ #ifndef XMLSEC_NO_DSA
607
+
608
+ #ifndef XMLSEC_NO_SHA1
609
+ /****************************************************************************
610
+ *
611
+ * DSA-SHA1 signature transform
612
+ *
613
+ * http://www.w3.org/TR/xmldsig-core/#sec-SignatureAlg:
614
+ *
615
+ * The output of the DSA algorithm consists of a pair of integers
616
+ * usually referred by the pair (r, s). The signature value consists of
617
+ * the base64 encoding of the concatenation of two octet-streams that
618
+ * respectively result from the octet-encoding of the values r and s in
619
+ * that order. Integer to octet-stream conversion must be done according
620
+ * to the I2OSP operation defined in the RFC 2437 [PKCS1] specification
621
+ * with a l parameter equal to 20. For example, the SignatureValue element
622
+ * for a DSA signature (r, s) with values specified in hexadecimal:
623
+ *
624
+ * r = 8BAC1AB6 6410435C B7181F95 B16AB97C 92B341C0
625
+ * s = 41E2345F 1F56DF24 58F426D1 55B4BA2D B6DCD8C8
626
+ *
627
+ * from the example in Appendix 5 of the DSS standard would be
628
+ *
629
+ * <SignatureValue>i6watmQQQ1y3GB+VsWq5fJKzQcBB4jRfH1bfJFj0JtFVtLotttzYyA==</SignatureValue>
630
+ *
631
+ ***************************************************************************/
632
+ static int
633
+ xmlSecGCryptDsaPkSign(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
634
+ const xmlSecByte* dgst, xmlSecSize dgstSize,
635
+ xmlSecBufferPtr out) {
636
+ gcry_mpi_t m_hash = NULL;
637
+ gcry_sexp_t s_data = NULL;
638
+ gcry_sexp_t s_sig = NULL;
639
+ gcry_sexp_t s_r = NULL;
640
+ gcry_sexp_t s_s = NULL;
641
+ gcry_mpi_t m_r = NULL;
642
+ gcry_mpi_t m_s = NULL;
643
+ gcry_sexp_t s_tmp;
644
+ gpg_error_t err;
645
+ int ret;
646
+ int res = -1;
647
+
648
+ xmlSecAssert2(key_data != NULL, -1);
649
+ xmlSecAssert2(xmlSecGCryptKeyDataDsaGetPrivateKey(key_data) != NULL, -1);
650
+ xmlSecAssert2(dgst != NULL, -1);
651
+ xmlSecAssert2(dgstSize > 0, -1);
652
+ xmlSecAssert2(out != NULL, -1);
653
+
654
+ /* get the current digest, can't use "hash" :( */
655
+ err = gcry_mpi_scan(&m_hash, GCRYMPI_FMT_USG, dgst, dgstSize, NULL);
656
+ if((err != GPG_ERR_NO_ERROR) || (m_hash == NULL)) {
657
+ xmlSecError(XMLSEC_ERRORS_HERE,
658
+ NULL,
659
+ "gcry_mpi_scan(hash)",
660
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
661
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
662
+ goto done;
663
+ }
664
+
665
+ err = gcry_sexp_build (&s_data, NULL,
666
+ "(data (flags raw)(value %m))",
667
+ m_hash);
668
+ if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
669
+ xmlSecError(XMLSEC_ERRORS_HERE,
670
+ NULL,
671
+ "gcry_sexp_build(data)",
672
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
673
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
674
+ goto done;
675
+ }
676
+
677
+ /* create signature */
678
+ err = gcry_pk_sign(&s_sig, s_data, xmlSecGCryptKeyDataDsaGetPrivateKey(key_data));
679
+ if(err != GPG_ERR_NO_ERROR) {
680
+ xmlSecError(XMLSEC_ERRORS_HERE,
681
+ NULL,
682
+ "gcry_pk_sign",
683
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
684
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
685
+ goto done;
686
+ }
687
+
688
+ /* find signature value */
689
+ s_tmp = gcry_sexp_find_token(s_sig, "sig-val", 0);
690
+ if(s_tmp == NULL) {
691
+ xmlSecError(XMLSEC_ERRORS_HERE,
692
+ NULL,
693
+ "gcry_sexp_find_token(sig-val)",
694
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
695
+ XMLSEC_ERRORS_NO_MESSAGE);
696
+ goto done;
697
+ }
698
+ gcry_sexp_release(s_sig);
699
+ s_sig = s_tmp;
700
+
701
+ s_tmp = gcry_sexp_find_token(s_sig, "dsa", 0);
702
+ if(s_tmp == NULL) {
703
+ xmlSecError(XMLSEC_ERRORS_HERE,
704
+ NULL,
705
+ "gcry_sexp_find_token(rsa)",
706
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
707
+ XMLSEC_ERRORS_NO_MESSAGE);
708
+ goto done;
709
+ }
710
+ gcry_sexp_release(s_sig);
711
+ s_sig = s_tmp;
712
+
713
+ /* r */
714
+ s_r = gcry_sexp_find_token(s_sig, "r", 0);
715
+ if(s_r == NULL) {
716
+ xmlSecError(XMLSEC_ERRORS_HERE,
717
+ NULL,
718
+ "gcry_sexp_find_token(r)",
719
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
720
+ XMLSEC_ERRORS_NO_MESSAGE);
721
+ goto done;
722
+ }
723
+
724
+ m_r = gcry_sexp_nth_mpi(s_r, 1, GCRYMPI_FMT_USG);
725
+ if(m_r == NULL) {
726
+ xmlSecError(XMLSEC_ERRORS_HERE,
727
+ NULL,
728
+ "gcry_sexp_nth_mpi(r)",
729
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
730
+ XMLSEC_ERRORS_NO_MESSAGE);
731
+ goto done;
732
+ }
733
+
734
+ /* s */
735
+ s_s = gcry_sexp_find_token(s_sig, "s", 0);
736
+ if(s_s == NULL) {
737
+ xmlSecError(XMLSEC_ERRORS_HERE,
738
+ NULL,
739
+ "gcry_sexp_find_token(s)",
740
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
741
+ XMLSEC_ERRORS_NO_MESSAGE);
742
+ goto done;
743
+ }
744
+
745
+ m_s = gcry_sexp_nth_mpi(s_s, 1, GCRYMPI_FMT_USG);
746
+ if(m_s == NULL) {
747
+ xmlSecError(XMLSEC_ERRORS_HERE,
748
+ NULL,
749
+ "gcry_sexp_nth_mpi(s)",
750
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
751
+ XMLSEC_ERRORS_NO_MESSAGE);
752
+ goto done;
753
+ }
754
+
755
+ /* write out: r + s */
756
+ ret = xmlSecGCryptAppendMpi(m_r, out, 20);
757
+ if(ret < 0) {
758
+ xmlSecError(XMLSEC_ERRORS_HERE,
759
+ NULL,
760
+ "xmlSecGCryptAppendMpi",
761
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
762
+ XMLSEC_ERRORS_NO_MESSAGE);
763
+ goto done;
764
+ }
765
+ xmlSecAssert2(xmlSecBufferGetSize(out) == 20, -1);
766
+ ret = xmlSecGCryptAppendMpi(m_s, out, 20);
767
+ if(ret < 0) {
768
+ xmlSecError(XMLSEC_ERRORS_HERE,
769
+ NULL,
770
+ "xmlSecGCryptAppendMpi",
771
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
772
+ XMLSEC_ERRORS_NO_MESSAGE);
773
+ goto done;
774
+ }
775
+ xmlSecAssert2(xmlSecBufferGetSize(out) == (20 + 20), -1);
776
+
777
+ /* done */
778
+ res = 0;
779
+
780
+ done:
781
+ if(m_hash != NULL) {
782
+ gcry_mpi_release(m_hash);
783
+ }
784
+ if(m_r != NULL) {
785
+ gcry_mpi_release(m_r);
786
+ }
787
+ if(m_s != NULL) {
788
+ gcry_mpi_release(m_s);
789
+ }
790
+
791
+ if(s_data != NULL) {
792
+ gcry_sexp_release(s_data);
793
+ }
794
+ if(s_sig != NULL) {
795
+ gcry_sexp_release(s_sig);
796
+ }
797
+ if(s_r != NULL) {
798
+ gcry_sexp_release(s_r);
799
+ }
800
+ if(s_s != NULL) {
801
+ gcry_sexp_release(s_s);
802
+ }
803
+
804
+ return(res);
805
+ }
806
+
807
+ static int
808
+ xmlSecGCryptDsaPkVerify(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
809
+ const xmlSecByte* dgst, xmlSecSize dgstSize,
810
+ const xmlSecByte* data, xmlSecSize dataSize) {
811
+ gcry_mpi_t m_hash = NULL;
812
+ gcry_sexp_t s_data = NULL;
813
+ gcry_mpi_t m_sig_r = NULL;
814
+ gcry_mpi_t m_sig_s = NULL;
815
+ gcry_sexp_t s_sig = NULL;
816
+ gpg_error_t err;
817
+ int res = -1;
818
+
819
+ xmlSecAssert2(key_data != NULL, -1);
820
+ xmlSecAssert2(xmlSecGCryptKeyDataDsaGetPublicKey(key_data) != NULL, -1);
821
+ xmlSecAssert2(dgst != NULL, -1);
822
+ xmlSecAssert2(dgstSize > 0, -1);
823
+ xmlSecAssert2(data != NULL, -1);
824
+ xmlSecAssert2(dataSize == (20 + 20), -1);
825
+
826
+ /* get the current digest, can't use "hash" :( */
827
+ err = gcry_mpi_scan(&m_hash, GCRYMPI_FMT_USG, dgst, dgstSize, NULL);
828
+ if((err != GPG_ERR_NO_ERROR) || (m_hash == NULL)) {
829
+ xmlSecError(XMLSEC_ERRORS_HERE,
830
+ NULL,
831
+ "gcry_mpi_scan(hash)",
832
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
833
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
834
+ goto done;
835
+ }
836
+
837
+ err = gcry_sexp_build (&s_data, NULL,
838
+ "(data (flags raw)(value %m))",
839
+ m_hash);
840
+ if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
841
+ xmlSecError(XMLSEC_ERRORS_HERE,
842
+ NULL,
843
+ "gcry_sexp_build(data)",
844
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
845
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
846
+ goto done;
847
+ }
848
+
849
+ /* get the existing signature */
850
+ err = gcry_mpi_scan(&m_sig_r, GCRYMPI_FMT_USG, data, 20, NULL);
851
+ if((err != GPG_ERR_NO_ERROR) || (m_sig_r == NULL)) {
852
+ xmlSecError(XMLSEC_ERRORS_HERE,
853
+ NULL,
854
+ "gcry_mpi_scan(r)",
855
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
856
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
857
+ goto done;
858
+ }
859
+ err = gcry_mpi_scan(&m_sig_s, GCRYMPI_FMT_USG, data + 20, 20, NULL);
860
+ if((err != GPG_ERR_NO_ERROR) || (m_sig_s == NULL)) {
861
+ xmlSecError(XMLSEC_ERRORS_HERE,
862
+ NULL,
863
+ "gcry_mpi_scan(s)",
864
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
865
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
866
+ goto done;
867
+ }
868
+
869
+ err = gcry_sexp_build (&s_sig, NULL,
870
+ "(sig-val(dsa(r %m)(s %m)))",
871
+ m_sig_r, m_sig_s);
872
+ if((err != GPG_ERR_NO_ERROR) || (s_sig == NULL)) {
873
+ xmlSecError(XMLSEC_ERRORS_HERE,
874
+ NULL,
875
+ "gcry_sexp_build(sig-val)",
876
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
877
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
878
+ goto done;
879
+ }
880
+
881
+ /* verify signature */
882
+ err = gcry_pk_verify(s_sig, s_data, xmlSecGCryptKeyDataDsaGetPublicKey(key_data));
883
+ if(err == GPG_ERR_NO_ERROR) {
884
+ res = 1; /* good signature */
885
+ } else if(err == GPG_ERR_BAD_SIGNATURE) {
886
+ res = 0; /* bad signature */
887
+ } else {
888
+ xmlSecError(XMLSEC_ERRORS_HERE,
889
+ NULL,
890
+ "gcry_pk_verify",
891
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
892
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
893
+ goto done;
894
+ }
895
+
896
+ /* done */
897
+ done:
898
+ if(m_hash != NULL) {
899
+ gcry_mpi_release(m_hash);
900
+ }
901
+ if(m_sig_r != NULL) {
902
+ gcry_mpi_release(m_sig_r);
903
+ }
904
+ if(m_sig_s != NULL) {
905
+ gcry_mpi_release(m_sig_s);
906
+ }
907
+
908
+ if(s_data != NULL) {
909
+ gcry_sexp_release(s_data);
910
+ }
911
+ if(s_sig != NULL) {
912
+ gcry_sexp_release(s_sig);
913
+ }
914
+
915
+ return(res);
916
+ }
917
+
918
+
919
+ static xmlSecTransformKlass xmlSecGCryptDsaSha1Klass = {
920
+ /* klass/object sizes */
921
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
922
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
923
+
924
+ xmlSecNameDsaSha1, /* const xmlChar* name; */
925
+ xmlSecHrefDsaSha1, /* const xmlChar* href; */
926
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
927
+
928
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
929
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
930
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
931
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
932
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
933
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
934
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
935
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
936
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
937
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
938
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
939
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
940
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
941
+
942
+ NULL, /* void* reserved0; */
943
+ NULL, /* void* reserved1; */
944
+ };
945
+
946
+ /**
947
+ * xmlSecGCryptTransformDsaSha1GetKlass:
948
+ *
949
+ * The DSA-SHA1 signature transform klass.
950
+ *
951
+ * Returns: DSA-SHA1 signature transform klass.
952
+ */
953
+ xmlSecTransformId
954
+ xmlSecGCryptTransformDsaSha1GetKlass(void) {
955
+ return(&xmlSecGCryptDsaSha1Klass);
956
+ }
957
+
958
+ #endif /* XMLSEC_NO_SHA1 */
959
+
960
+ #endif /* XMLSEC_NO_DSA */
961
+
962
+ #ifndef XMLSEC_NO_RSA
963
+
964
+ /****************************************************************************
965
+ *
966
+ * RSA-SHA1 signature transform
967
+ *
968
+ * http://www.w3.org/TR/xmldsig-core/#sec-SignatureAlg:
969
+ *
970
+ * The SignatureValue content for an RSA signature is the base64 [MIME]
971
+ * encoding of the octet string computed as per RFC 2437 [PKCS1,
972
+ * section 8.1.1: Signature generation for the RSASSA-PKCS1-v1_5 signature
973
+ * scheme]. As specified in the EMSA-PKCS1-V1_5-ENCODE function RFC 2437
974
+ * [PKCS1, section 9.2.1], the value input to the signature function MUST
975
+ * contain a pre-pended algorithm object identifier for the hash function,
976
+ * but the availability of an ASN.1 parser and recognition of OIDs is not
977
+ * required of a signature verifier. The PKCS#1 v1.5 representation appears
978
+ * as:
979
+ *
980
+ * CRYPT (PAD (ASN.1 (OID, DIGEST (data))))
981
+ *
982
+ * Note that the padded ASN.1 will be of the following form:
983
+ *
984
+ * 01 | FF* | 00 | prefix | hash
985
+ *
986
+ * where "|" is concatenation, "01", "FF", and "00" are fixed octets of
987
+ * the corresponding hexadecimal value, "hash" is the SHA1 digest of the
988
+ * data, and "prefix" is the ASN.1 BER SHA1 algorithm designator prefix
989
+ * required in PKCS1 [RFC 2437], that is,
990
+ *
991
+ * hex 30 21 30 09 06 05 2B 0E 03 02 1A 05 00 04 14
992
+ *
993
+ * This prefix is included to make it easier to use standard cryptographic
994
+ * libraries. The FF octet MUST be repeated the maximum number of times such
995
+ * that the value of the quantity being CRYPTed is one octet shorter than
996
+ * the RSA modulus.
997
+ *
998
+ ***************************************************************************/
999
+ static int
1000
+ xmlSecGCryptRsaPkcs1PkSign(int digest, xmlSecKeyDataPtr key_data,
1001
+ const xmlSecByte* dgst, xmlSecSize dgstSize,
1002
+ xmlSecBufferPtr out) {
1003
+ gcry_sexp_t s_data = NULL;
1004
+ gcry_mpi_t m_sig = NULL;
1005
+ gcry_sexp_t s_sig = NULL;
1006
+ gcry_sexp_t s_tmp;
1007
+ gpg_error_t err;
1008
+ int ret;
1009
+ int res = -1;
1010
+
1011
+ xmlSecAssert2(key_data != NULL, -1);
1012
+ xmlSecAssert2(xmlSecGCryptKeyDataRsaGetPrivateKey(key_data) != NULL, -1);
1013
+ xmlSecAssert2(dgst != NULL, -1);
1014
+ xmlSecAssert2(dgstSize > 0, -1);
1015
+ xmlSecAssert2(out != NULL, -1);
1016
+
1017
+ /* get the current digest */
1018
+ err = gcry_sexp_build (&s_data, NULL,
1019
+ "(data (flags pkcs1)(hash %s %b))",
1020
+ gcry_md_algo_name(digest),
1021
+ (int)dgstSize, dgst);
1022
+ if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
1023
+ xmlSecError(XMLSEC_ERRORS_HERE,
1024
+ NULL,
1025
+ "gcry_sexp_build(data)",
1026
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1027
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1028
+ goto done;
1029
+ }
1030
+
1031
+ /* create signature */
1032
+ err = gcry_pk_sign(&s_sig, s_data, xmlSecGCryptKeyDataRsaGetPrivateKey(key_data));
1033
+ if(err != GPG_ERR_NO_ERROR) {
1034
+ xmlSecError(XMLSEC_ERRORS_HERE,
1035
+ NULL,
1036
+ "gcry_pk_sign",
1037
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1038
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1039
+ goto done;
1040
+ }
1041
+
1042
+ /* find signature value */
1043
+ s_tmp = gcry_sexp_find_token(s_sig, "sig-val", 0);
1044
+ if(s_tmp == NULL) {
1045
+ xmlSecError(XMLSEC_ERRORS_HERE,
1046
+ NULL,
1047
+ "gcry_sexp_find_token(sig-val)",
1048
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1049
+ XMLSEC_ERRORS_NO_MESSAGE);
1050
+ goto done;
1051
+ }
1052
+ gcry_sexp_release(s_sig);
1053
+ s_sig = s_tmp;
1054
+
1055
+ s_tmp = gcry_sexp_find_token(s_sig, "rsa", 0);
1056
+ if(s_tmp == NULL) {
1057
+ xmlSecError(XMLSEC_ERRORS_HERE,
1058
+ NULL,
1059
+ "gcry_sexp_find_token(rsa)",
1060
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1061
+ XMLSEC_ERRORS_NO_MESSAGE);
1062
+ goto done;
1063
+ }
1064
+ gcry_sexp_release(s_sig);
1065
+ s_sig = s_tmp;
1066
+
1067
+ s_tmp = gcry_sexp_find_token(s_sig, "s", 0);
1068
+ if(s_tmp == NULL) {
1069
+ xmlSecError(XMLSEC_ERRORS_HERE,
1070
+ NULL,
1071
+ "gcry_sexp_find_token(s)",
1072
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1073
+ XMLSEC_ERRORS_NO_MESSAGE);
1074
+ goto done;
1075
+ }
1076
+ gcry_sexp_release(s_sig);
1077
+ s_sig = s_tmp;
1078
+
1079
+ m_sig = gcry_sexp_nth_mpi(s_sig, 1, GCRYMPI_FMT_USG);
1080
+ if(m_sig == NULL) {
1081
+ xmlSecError(XMLSEC_ERRORS_HERE,
1082
+ NULL,
1083
+ "gcry_sexp_nth_mpi(1)",
1084
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1085
+ XMLSEC_ERRORS_NO_MESSAGE);
1086
+ goto done;
1087
+ }
1088
+
1089
+ /* write out */
1090
+ ret = xmlSecGCryptAppendMpi(m_sig, out, 0);
1091
+ if(ret < 0) {
1092
+ xmlSecError(XMLSEC_ERRORS_HERE,
1093
+ NULL,
1094
+ "xmlSecGCryptAppendMpi",
1095
+ XMLSEC_ERRORS_R_XMLSEC_FAILED,
1096
+ XMLSEC_ERRORS_NO_MESSAGE);
1097
+ goto done;
1098
+ }
1099
+
1100
+ /* done */
1101
+ res = 0;
1102
+
1103
+ done:
1104
+ if(m_sig != NULL) {
1105
+ gcry_mpi_release(m_sig);
1106
+ }
1107
+
1108
+ if(s_data != NULL) {
1109
+ gcry_sexp_release(s_data);
1110
+ }
1111
+ if(s_sig != NULL) {
1112
+ gcry_sexp_release(s_sig);
1113
+ }
1114
+
1115
+ return(res);
1116
+ }
1117
+
1118
+ static int
1119
+ xmlSecGCryptRsaPkcs1PkVerify(int digest, xmlSecKeyDataPtr key_data,
1120
+ const xmlSecByte* dgst, xmlSecSize dgstSize,
1121
+ const xmlSecByte* data, xmlSecSize dataSize) {
1122
+ gcry_sexp_t s_data = NULL;
1123
+ gcry_mpi_t m_sig = NULL;
1124
+ gcry_sexp_t s_sig = NULL;
1125
+ gpg_error_t err;
1126
+ int res = -1;
1127
+
1128
+ xmlSecAssert2(key_data != NULL, -1);
1129
+ xmlSecAssert2(xmlSecGCryptKeyDataRsaGetPublicKey(key_data) != NULL, -1);
1130
+ xmlSecAssert2(dgst != NULL, -1);
1131
+ xmlSecAssert2(dgstSize > 0, -1);
1132
+ xmlSecAssert2(data != NULL, -1);
1133
+ xmlSecAssert2(dataSize > 0, -1);
1134
+
1135
+ /* get the current digest */
1136
+ err = gcry_sexp_build (&s_data, NULL,
1137
+ "(data (flags pkcs1)(hash %s %b))",
1138
+ gcry_md_algo_name(digest),
1139
+ (int)dgstSize, dgst);
1140
+ if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
1141
+ xmlSecError(XMLSEC_ERRORS_HERE,
1142
+ NULL,
1143
+ "gcry_sexp_build(data)",
1144
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1145
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1146
+ goto done;
1147
+ }
1148
+
1149
+ /* get the existing signature */
1150
+ err = gcry_mpi_scan(&m_sig, GCRYMPI_FMT_USG, data, dataSize, NULL);
1151
+ if((err != GPG_ERR_NO_ERROR) || (m_sig == NULL)) {
1152
+ xmlSecError(XMLSEC_ERRORS_HERE,
1153
+ NULL,
1154
+ "gcry_mpi_scan",
1155
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1156
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1157
+ goto done;
1158
+ }
1159
+
1160
+ err = gcry_sexp_build (&s_sig, NULL,
1161
+ "(sig-val(rsa(s %m)))",
1162
+ m_sig);
1163
+ if((err != GPG_ERR_NO_ERROR) || (s_sig == NULL)) {
1164
+ xmlSecError(XMLSEC_ERRORS_HERE,
1165
+ NULL,
1166
+ "gcry_sexp_build(sig-val)",
1167
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1168
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1169
+ goto done;
1170
+ }
1171
+
1172
+ /* verify signature */
1173
+ err = gcry_pk_verify(s_sig, s_data, xmlSecGCryptKeyDataRsaGetPublicKey(key_data));
1174
+ if(err == GPG_ERR_NO_ERROR) {
1175
+ res = 1; /* good signature */
1176
+ } else if(err == GPG_ERR_BAD_SIGNATURE) {
1177
+ res = 0; /* bad signature */
1178
+ } else {
1179
+ xmlSecError(XMLSEC_ERRORS_HERE,
1180
+ NULL,
1181
+ "gcry_pk_verify",
1182
+ XMLSEC_ERRORS_R_CRYPTO_FAILED,
1183
+ XMLSEC_GCRYPT_REPORT_ERROR(err));
1184
+ goto done;
1185
+ }
1186
+
1187
+ /* done */
1188
+ done:
1189
+ if(m_sig != NULL) {
1190
+ gcry_mpi_release(m_sig);
1191
+ }
1192
+
1193
+ if(s_data != NULL) {
1194
+ gcry_sexp_release(s_data);
1195
+ }
1196
+ if(s_sig != NULL) {
1197
+ gcry_sexp_release(s_sig);
1198
+ }
1199
+
1200
+ return(res);
1201
+ }
1202
+
1203
+
1204
+ #ifndef XMLSEC_NO_MD5
1205
+ /****************************************************************************
1206
+ *
1207
+ * RSA-MD5 signature transform
1208
+ *
1209
+ ***************************************************************************/
1210
+ static xmlSecTransformKlass xmlSecGCryptRsaMd5Klass = {
1211
+ /* klass/object sizes */
1212
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1213
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1214
+
1215
+ xmlSecNameRsaMd5, /* const xmlChar* name; */
1216
+ xmlSecHrefRsaMd5, /* const xmlChar* href; */
1217
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1218
+
1219
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1220
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1221
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1222
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1223
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1224
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1225
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1226
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1227
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1228
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1229
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1230
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1231
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1232
+
1233
+ NULL, /* void* reserved0; */
1234
+ NULL, /* void* reserved1; */
1235
+ };
1236
+
1237
+ /**
1238
+ * xmlSecGCryptTransformRsaMd5GetKlass:
1239
+ *
1240
+ * The RSA-MD5 signature transform klass.
1241
+ *
1242
+ * Returns: RSA-MD5 signature transform klass.
1243
+ */
1244
+ xmlSecTransformId
1245
+ xmlSecGCryptTransformRsaMd5GetKlass(void) {
1246
+ return(&xmlSecGCryptRsaMd5Klass);
1247
+ }
1248
+
1249
+ #endif /* XMLSEC_NO_MD5 */
1250
+
1251
+ #ifndef XMLSEC_NO_RIPEMD160
1252
+ /****************************************************************************
1253
+ *
1254
+ * RSA-RIPEMD160 signature transform
1255
+ *
1256
+ ***************************************************************************/
1257
+ static xmlSecTransformKlass xmlSecGCryptRsaRipemd160Klass = {
1258
+ /* klass/object sizes */
1259
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1260
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1261
+
1262
+ xmlSecNameRsaRipemd160, /* const xmlChar* name; */
1263
+ xmlSecHrefRsaRipemd160, /* const xmlChar* href; */
1264
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1265
+
1266
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1267
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1268
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1269
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1270
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1271
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1272
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1273
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1274
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1275
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1276
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1277
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1278
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1279
+
1280
+ NULL, /* void* reserved0; */
1281
+ NULL, /* void* reserved1; */
1282
+ };
1283
+
1284
+ /**
1285
+ * xmlSecGCryptTransformRsaRipemd160GetKlass:
1286
+ *
1287
+ * The RSA-RIPEMD160 signature transform klass.
1288
+ *
1289
+ * Returns: RSA-RIPEMD160 signature transform klass.
1290
+ */
1291
+ xmlSecTransformId
1292
+ xmlSecGCryptTransformRsaRipemd160GetKlass(void) {
1293
+ return(&xmlSecGCryptRsaRipemd160Klass);
1294
+ }
1295
+
1296
+ #endif /* XMLSEC_NO_RIPEMD160 */
1297
+
1298
+ #ifndef XMLSEC_NO_SHA1
1299
+ /****************************************************************************
1300
+ *
1301
+ * RSA-SHA1 signature transform
1302
+ *
1303
+ ***************************************************************************/
1304
+ static xmlSecTransformKlass xmlSecGCryptRsaSha1Klass = {
1305
+ /* klass/object sizes */
1306
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1307
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1308
+
1309
+ xmlSecNameRsaSha1, /* const xmlChar* name; */
1310
+ xmlSecHrefRsaSha1, /* const xmlChar* href; */
1311
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1312
+
1313
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1314
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1315
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1316
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1317
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1318
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1319
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1320
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1321
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1322
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1323
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1324
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1325
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1326
+
1327
+ NULL, /* void* reserved0; */
1328
+ NULL, /* void* reserved1; */
1329
+ };
1330
+
1331
+ /**
1332
+ * xmlSecGCryptTransformRsaSha1GetKlass:
1333
+ *
1334
+ * The RSA-SHA1 signature transform klass.
1335
+ *
1336
+ * Returns: RSA-SHA1 signature transform klass.
1337
+ */
1338
+ xmlSecTransformId
1339
+ xmlSecGCryptTransformRsaSha1GetKlass(void) {
1340
+ return(&xmlSecGCryptRsaSha1Klass);
1341
+ }
1342
+
1343
+ #endif /* XMLSEC_NO_SHA1 */
1344
+
1345
+
1346
+ #ifndef XMLSEC_NO_SHA256
1347
+ /****************************************************************************
1348
+ *
1349
+ * RSA-SHA256 signature transform
1350
+ *
1351
+ ***************************************************************************/
1352
+ static xmlSecTransformKlass xmlSecGCryptRsaSha256Klass = {
1353
+ /* klass/object sizes */
1354
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1355
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1356
+
1357
+ xmlSecNameRsaSha256, /* const xmlChar* name; */
1358
+ xmlSecHrefRsaSha256, /* const xmlChar* href; */
1359
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1360
+
1361
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1362
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1363
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1364
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1365
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1366
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1367
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1368
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1369
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1370
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1371
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1372
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1373
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1374
+
1375
+ NULL, /* void* reserved0; */
1376
+ NULL, /* void* reserved1; */
1377
+ };
1378
+
1379
+ /**
1380
+ * xmlSecGCryptTransformRsaSha256GetKlass:
1381
+ *
1382
+ * The RSA-SHA256 signature transform klass.
1383
+ *
1384
+ * Returns: RSA-SHA256 signature transform klass.
1385
+ */
1386
+ xmlSecTransformId
1387
+ xmlSecGCryptTransformRsaSha256GetKlass(void) {
1388
+ return(&xmlSecGCryptRsaSha256Klass);
1389
+ }
1390
+
1391
+ #endif /* XMLSEC_NO_SHA256 */
1392
+
1393
+ #ifndef XMLSEC_NO_SHA384
1394
+ /****************************************************************************
1395
+ *
1396
+ * RSA-SHA384 signature transform
1397
+ *
1398
+ ***************************************************************************/
1399
+ static xmlSecTransformKlass xmlSecGCryptRsaSha384Klass = {
1400
+ /* klass/object sizes */
1401
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1402
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1403
+
1404
+ xmlSecNameRsaSha384, /* const xmlChar* name; */
1405
+ xmlSecHrefRsaSha384, /* const xmlChar* href; */
1406
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1407
+
1408
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1409
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1410
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1411
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1412
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1413
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1414
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1415
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1416
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1417
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1418
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1419
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1420
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1421
+
1422
+ NULL, /* void* reserved0; */
1423
+ NULL, /* void* reserved1; */
1424
+ };
1425
+
1426
+ /**
1427
+ * xmlSecGCryptTransformRsaSha384GetKlass:
1428
+ *
1429
+ * The RSA-SHA384 signature transform klass.
1430
+ *
1431
+ * Returns: RSA-SHA384 signature transform klass.
1432
+ */
1433
+ xmlSecTransformId
1434
+ xmlSecGCryptTransformRsaSha384GetKlass(void) {
1435
+ return(&xmlSecGCryptRsaSha384Klass);
1436
+ }
1437
+
1438
+ #endif /* XMLSEC_NO_SHA384 */
1439
+
1440
+ #ifndef XMLSEC_NO_SHA512
1441
+ /****************************************************************************
1442
+ *
1443
+ * RSA-SHA512 signature transform
1444
+ *
1445
+ ***************************************************************************/
1446
+ static xmlSecTransformKlass xmlSecGCryptRsaSha512Klass = {
1447
+ /* klass/object sizes */
1448
+ sizeof(xmlSecTransformKlass), /* xmlSecSize klassSize */
1449
+ xmlSecGCryptPkSignatureSize, /* xmlSecSize objSize */
1450
+
1451
+ xmlSecNameRsaSha512, /* const xmlChar* name; */
1452
+ xmlSecHrefRsaSha512, /* const xmlChar* href; */
1453
+ xmlSecTransformUsageSignatureMethod, /* xmlSecTransformUsage usage; */
1454
+
1455
+ xmlSecGCryptPkSignatureInitialize, /* xmlSecTransformInitializeMethod initialize; */
1456
+ xmlSecGCryptPkSignatureFinalize, /* xmlSecTransformFinalizeMethod finalize; */
1457
+ NULL, /* xmlSecTransformNodeReadMethod readNode; */
1458
+ NULL, /* xmlSecTransformNodeWriteMethod writeNode; */
1459
+ xmlSecGCryptPkSignatureSetKeyReq, /* xmlSecTransformSetKeyReqMethod setKeyReq; */
1460
+ xmlSecGCryptPkSignatureSetKey, /* xmlSecTransformSetKeyMethod setKey; */
1461
+ xmlSecGCryptPkSignatureVerify, /* xmlSecTransformVerifyMethod verify; */
1462
+ xmlSecTransformDefaultGetDataType, /* xmlSecTransformGetDataTypeMethod getDataType; */
1463
+ xmlSecTransformDefaultPushBin, /* xmlSecTransformPushBinMethod pushBin; */
1464
+ xmlSecTransformDefaultPopBin, /* xmlSecTransformPopBinMethod popBin; */
1465
+ NULL, /* xmlSecTransformPushXmlMethod pushXml; */
1466
+ NULL, /* xmlSecTransformPopXmlMethod popXml; */
1467
+ xmlSecGCryptPkSignatureExecute, /* xmlSecTransformExecuteMethod execute; */
1468
+
1469
+ NULL, /* void* reserved0; */
1470
+ NULL, /* void* reserved1; */
1471
+ };
1472
+
1473
+ /**
1474
+ * xmlSecGCryptTransformRsaSha512GetKlass:
1475
+ *
1476
+ * The RSA-SHA512 signature transform klass.
1477
+ *
1478
+ * Returns: RSA-SHA512 signature transform klass.
1479
+ */
1480
+ xmlSecTransformId
1481
+ xmlSecGCryptTransformRsaSha512GetKlass(void) {
1482
+ return(&xmlSecGCryptRsaSha512Klass);
1483
+ }
1484
+
1485
+ #endif /* XMLSEC_NO_SHA512 */
1486
+
1487
+ #endif /* XMLSEC_NO_RSA */
1488
+
1489
+
1490
+