RSA.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <!-- NewPage -->
  3. <html lang="zh">
  4. <head>
  5. <!-- Generated by javadoc (1.8.0_101) on Mon Nov 06 13:32:46 CST 2017 -->
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>RSA</title>
  8. <meta name="date" content="2017-11-06">
  9. <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
  10. <script type="text/javascript" src="../../../script.js"></script>
  11. </head>
  12. <body>
  13. <script type="text/javascript"><!--
  14. try {
  15. if (location.href.indexOf('is-external=true') == -1) {
  16. parent.document.title="RSA";
  17. }
  18. }
  19. catch(err) {
  20. }
  21. //-->
  22. var methods = {"i0":9,"i1":9,"i2":9,"i3":9};
  23. var tabs = {65535:["t0","所有方法"],1:["t1","静态方法"],8:["t4","具体方法"]};
  24. var altColor = "altColor";
  25. var rowColor = "rowColor";
  26. var tableTab = "tableTab";
  27. var activeTableTab = "activeTableTab";
  28. </script>
  29. <noscript>
  30. <div>您的浏览器已禁用 JavaScript。</div>
  31. </noscript>
  32. <!-- ========= START OF TOP NAVBAR ======= -->
  33. <div class="topNav"><a name="navbar.top">
  34. <!-- -->
  35. </a>
  36. <div class="skipNav"><a href="#skip.navbar.top" title="跳过导航链接">跳过导航链接</a></div>
  37. <a name="navbar.top.firstrow">
  38. <!-- -->
  39. </a>
  40. <ul class="navList" title="导航">
  41. <li><a href="../../../overview-summary.html">概览</a></li>
  42. <li><a href="package-summary.html">程序包</a></li>
  43. <li class="navBarCell1Rev">类</li>
  44. <li><a href="class-use/RSA.html">使用</a></li>
  45. <li><a href="package-tree.html">树</a></li>
  46. <li><a href="../../../deprecated-list.html">已过时</a></li>
  47. <li><a href="../../../index-files/index-1.html">索引</a></li>
  48. <li><a href="../../../help-doc.html">帮助</a></li>
  49. </ul>
  50. </div>
  51. <div class="subNav">
  52. <ul class="navList">
  53. <li><a href="../../../com/alipay/sign/Base64.html" title="com.alipay.sign中的类"><span class="typeNameLink">上一个类</span></a></li>
  54. <li>下一个类</li>
  55. </ul>
  56. <ul class="navList">
  57. <li><a href="../../../index.html?com/alipay/sign/RSA.html" target="_top">框架</a></li>
  58. <li><a href="RSA.html" target="_top">无框架</a></li>
  59. </ul>
  60. <ul class="navList" id="allclasses_navbar_top">
  61. <li><a href="../../../allclasses-noframe.html">所有类</a></li>
  62. </ul>
  63. <div>
  64. <script type="text/javascript"><!--
  65. allClassesLink = document.getElementById("allclasses_navbar_top");
  66. if(window==top) {
  67. allClassesLink.style.display = "block";
  68. }
  69. else {
  70. allClassesLink.style.display = "none";
  71. }
  72. //-->
  73. </script>
  74. </div>
  75. <div>
  76. <ul class="subNavList">
  77. <li>概要:&nbsp;</li>
  78. <li>嵌套&nbsp;|&nbsp;</li>
  79. <li><a href="#field.summary">字段</a>&nbsp;|&nbsp;</li>
  80. <li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
  81. <li><a href="#method.summary">方法</a></li>
  82. </ul>
  83. <ul class="subNavList">
  84. <li>详细资料:&nbsp;</li>
  85. <li><a href="#field.detail">字段</a>&nbsp;|&nbsp;</li>
  86. <li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
  87. <li><a href="#method.detail">方法</a></li>
  88. </ul>
  89. </div>
  90. <a name="skip.navbar.top">
  91. <!-- -->
  92. </a></div>
  93. <!-- ========= END OF TOP NAVBAR ========= -->
  94. <!-- ======== START OF CLASS DATA ======== -->
  95. <div class="header">
  96. <div class="subTitle">com.alipay.sign</div>
  97. <h2 title="类 RSA" class="title">类 RSA</h2>
  98. </div>
  99. <div class="contentContainer">
  100. <ul class="inheritance">
  101. <li>java.lang.Object</li>
  102. <li>
  103. <ul class="inheritance">
  104. <li>com.alipay.sign.RSA</li>
  105. </ul>
  106. </li>
  107. </ul>
  108. <div class="description">
  109. <ul class="blockList">
  110. <li class="blockList">
  111. <hr>
  112. <br>
  113. <pre>public class <span class="typeNameLabel">RSA</span>
  114. extends java.lang.Object</pre>
  115. </li>
  116. </ul>
  117. </div>
  118. <div class="summary">
  119. <ul class="blockList">
  120. <li class="blockList">
  121. <!-- =========== FIELD SUMMARY =========== -->
  122. <ul class="blockList">
  123. <li class="blockList"><a name="field.summary">
  124. <!-- -->
  125. </a>
  126. <h3>字段概要</h3>
  127. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="字段概要表, 列表字段和解释">
  128. <caption><span>字段</span><span class="tabEnd">&nbsp;</span></caption>
  129. <tr>
  130. <th class="colFirst" scope="col">限定符和类型</th>
  131. <th class="colLast" scope="col">字段和说明</th>
  132. </tr>
  133. <tr class="altColor">
  134. <td class="colFirst"><code>static java.lang.String</code></td>
  135. <td class="colLast"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#SIGN_ALGORITHMS">SIGN_ALGORITHMS</a></span></code>&nbsp;</td>
  136. </tr>
  137. </table>
  138. </li>
  139. </ul>
  140. <!-- ======== CONSTRUCTOR SUMMARY ======== -->
  141. <ul class="blockList">
  142. <li class="blockList"><a name="constructor.summary">
  143. <!-- -->
  144. </a>
  145. <h3>构造器概要</h3>
  146. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="构造器概要表, 列表构造器和解释">
  147. <caption><span>构造器</span><span class="tabEnd">&nbsp;</span></caption>
  148. <tr>
  149. <th class="colOne" scope="col">构造器和说明</th>
  150. </tr>
  151. <tr class="altColor">
  152. <td class="colOne"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#RSA--">RSA</a></span>()</code>&nbsp;</td>
  153. </tr>
  154. </table>
  155. </li>
  156. </ul>
  157. <!-- ========== METHOD SUMMARY =========== -->
  158. <ul class="blockList">
  159. <li class="blockList"><a name="method.summary">
  160. <!-- -->
  161. </a>
  162. <h3>方法概要</h3>
  163. <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="方法概要表, 列表方法和解释">
  164. <caption><span id="t0" class="activeTableTab"><span>所有方法</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">静态方法</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">具体方法</a></span><span class="tabEnd">&nbsp;</span></span></caption>
  165. <tr>
  166. <th class="colFirst" scope="col">限定符和类型</th>
  167. <th class="colLast" scope="col">方法和说明</th>
  168. </tr>
  169. <tr id="i0" class="altColor">
  170. <td class="colFirst"><code>static java.lang.String</code></td>
  171. <td class="colLast"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#decrypt-java.lang.String-java.lang.String-java.lang.String-">decrypt</a></span>(java.lang.String&nbsp;content,
  172. java.lang.String&nbsp;private_key,
  173. java.lang.String&nbsp;input_charset)</code>
  174. <div class="block">解密</div>
  175. </td>
  176. </tr>
  177. <tr id="i1" class="rowColor">
  178. <td class="colFirst"><code>static java.security.PrivateKey</code></td>
  179. <td class="colLast"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#getPrivateKey-java.lang.String-">getPrivateKey</a></span>(java.lang.String&nbsp;key)</code>
  180. <div class="block">得到私钥</div>
  181. </td>
  182. </tr>
  183. <tr id="i2" class="altColor">
  184. <td class="colFirst"><code>static java.lang.String</code></td>
  185. <td class="colLast"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#sign-java.lang.String-java.lang.String-java.lang.String-">sign</a></span>(java.lang.String&nbsp;content,
  186. java.lang.String&nbsp;privateKey,
  187. java.lang.String&nbsp;input_charset)</code>
  188. <div class="block">RSA签名</div>
  189. </td>
  190. </tr>
  191. <tr id="i3" class="rowColor">
  192. <td class="colFirst"><code>static boolean</code></td>
  193. <td class="colLast"><code><span class="memberNameLink"><a href="../../../com/alipay/sign/RSA.html#verify-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">verify</a></span>(java.lang.String&nbsp;content,
  194. java.lang.String&nbsp;sign,
  195. java.lang.String&nbsp;ali_public_key,
  196. java.lang.String&nbsp;input_charset)</code>
  197. <div class="block">RSA验签名检查</div>
  198. </td>
  199. </tr>
  200. </table>
  201. <ul class="blockList">
  202. <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
  203. <!-- -->
  204. </a>
  205. <h3>从类继承的方法&nbsp;java.lang.Object</h3>
  206. <code>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
  207. </ul>
  208. </li>
  209. </ul>
  210. </li>
  211. </ul>
  212. </div>
  213. <div class="details">
  214. <ul class="blockList">
  215. <li class="blockList">
  216. <!-- ============ FIELD DETAIL =========== -->
  217. <ul class="blockList">
  218. <li class="blockList"><a name="field.detail">
  219. <!-- -->
  220. </a>
  221. <h3>字段详细资料</h3>
  222. <a name="SIGN_ALGORITHMS">
  223. <!-- -->
  224. </a>
  225. <ul class="blockListLast">
  226. <li class="blockList">
  227. <h4>SIGN_ALGORITHMS</h4>
  228. <pre>public static final&nbsp;java.lang.String SIGN_ALGORITHMS</pre>
  229. <dl>
  230. <dt><span class="seeLabel">另请参阅:</span></dt>
  231. <dd><a href="../../../constant-values.html#com.alipay.sign.RSA.SIGN_ALGORITHMS">常量字段值</a></dd>
  232. </dl>
  233. </li>
  234. </ul>
  235. </li>
  236. </ul>
  237. <!-- ========= CONSTRUCTOR DETAIL ======== -->
  238. <ul class="blockList">
  239. <li class="blockList"><a name="constructor.detail">
  240. <!-- -->
  241. </a>
  242. <h3>构造器详细资料</h3>
  243. <a name="RSA--">
  244. <!-- -->
  245. </a>
  246. <ul class="blockListLast">
  247. <li class="blockList">
  248. <h4>RSA</h4>
  249. <pre>public&nbsp;RSA()</pre>
  250. </li>
  251. </ul>
  252. </li>
  253. </ul>
  254. <!-- ============ METHOD DETAIL ========== -->
  255. <ul class="blockList">
  256. <li class="blockList"><a name="method.detail">
  257. <!-- -->
  258. </a>
  259. <h3>方法详细资料</h3>
  260. <a name="sign-java.lang.String-java.lang.String-java.lang.String-">
  261. <!-- -->
  262. </a>
  263. <ul class="blockList">
  264. <li class="blockList">
  265. <h4>sign</h4>
  266. <pre>public static&nbsp;java.lang.String&nbsp;sign(java.lang.String&nbsp;content,
  267. java.lang.String&nbsp;privateKey,
  268. java.lang.String&nbsp;input_charset)</pre>
  269. <div class="block">RSA签名</div>
  270. <dl>
  271. <dt><span class="paramLabel">参数:</span></dt>
  272. <dd><code>content</code> - 待签名数据</dd>
  273. <dd><code>privateKey</code> - 商户私钥</dd>
  274. <dd><code>input_charset</code> - 编码格式</dd>
  275. <dt><span class="returnLabel">返回:</span></dt>
  276. <dd>签名值</dd>
  277. </dl>
  278. </li>
  279. </ul>
  280. <a name="verify-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">
  281. <!-- -->
  282. </a>
  283. <ul class="blockList">
  284. <li class="blockList">
  285. <h4>verify</h4>
  286. <pre>public static&nbsp;boolean&nbsp;verify(java.lang.String&nbsp;content,
  287. java.lang.String&nbsp;sign,
  288. java.lang.String&nbsp;ali_public_key,
  289. java.lang.String&nbsp;input_charset)</pre>
  290. <div class="block">RSA验签名检查</div>
  291. <dl>
  292. <dt><span class="paramLabel">参数:</span></dt>
  293. <dd><code>content</code> - 待签名数据</dd>
  294. <dd><code>sign</code> - 签名值</dd>
  295. <dd><code>ali_public_key</code> - 支付宝公钥</dd>
  296. <dd><code>input_charset</code> - 编码格式</dd>
  297. <dt><span class="returnLabel">返回:</span></dt>
  298. <dd>布尔值</dd>
  299. </dl>
  300. </li>
  301. </ul>
  302. <a name="decrypt-java.lang.String-java.lang.String-java.lang.String-">
  303. <!-- -->
  304. </a>
  305. <ul class="blockList">
  306. <li class="blockList">
  307. <h4>decrypt</h4>
  308. <pre>public static&nbsp;java.lang.String&nbsp;decrypt(java.lang.String&nbsp;content,
  309. java.lang.String&nbsp;private_key,
  310. java.lang.String&nbsp;input_charset)
  311. throws java.lang.Exception</pre>
  312. <div class="block">解密</div>
  313. <dl>
  314. <dt><span class="paramLabel">参数:</span></dt>
  315. <dd><code>content</code> - 密文</dd>
  316. <dd><code>private_key</code> - 商户私钥</dd>
  317. <dd><code>input_charset</code> - 编码格式</dd>
  318. <dt><span class="returnLabel">返回:</span></dt>
  319. <dd>解密后的字符串</dd>
  320. <dt><span class="throwsLabel">抛出:</span></dt>
  321. <dd><code>java.lang.Exception</code></dd>
  322. </dl>
  323. </li>
  324. </ul>
  325. <a name="getPrivateKey-java.lang.String-">
  326. <!-- -->
  327. </a>
  328. <ul class="blockListLast">
  329. <li class="blockList">
  330. <h4>getPrivateKey</h4>
  331. <pre>public static&nbsp;java.security.PrivateKey&nbsp;getPrivateKey(java.lang.String&nbsp;key)
  332. throws java.lang.Exception</pre>
  333. <div class="block">得到私钥</div>
  334. <dl>
  335. <dt><span class="paramLabel">参数:</span></dt>
  336. <dd><code>key</code> - 密钥字符串(经过base64编码)</dd>
  337. <dt><span class="throwsLabel">抛出:</span></dt>
  338. <dd><code>java.lang.Exception</code></dd>
  339. </dl>
  340. </li>
  341. </ul>
  342. </li>
  343. </ul>
  344. </li>
  345. </ul>
  346. </div>
  347. </div>
  348. <!-- ========= END OF CLASS DATA ========= -->
  349. <!-- ======= START OF BOTTOM NAVBAR ====== -->
  350. <div class="bottomNav"><a name="navbar.bottom">
  351. <!-- -->
  352. </a>
  353. <div class="skipNav"><a href="#skip.navbar.bottom" title="跳过导航链接">跳过导航链接</a></div>
  354. <a name="navbar.bottom.firstrow">
  355. <!-- -->
  356. </a>
  357. <ul class="navList" title="导航">
  358. <li><a href="../../../overview-summary.html">概览</a></li>
  359. <li><a href="package-summary.html">程序包</a></li>
  360. <li class="navBarCell1Rev">类</li>
  361. <li><a href="class-use/RSA.html">使用</a></li>
  362. <li><a href="package-tree.html">树</a></li>
  363. <li><a href="../../../deprecated-list.html">已过时</a></li>
  364. <li><a href="../../../index-files/index-1.html">索引</a></li>
  365. <li><a href="../../../help-doc.html">帮助</a></li>
  366. </ul>
  367. </div>
  368. <div class="subNav">
  369. <ul class="navList">
  370. <li><a href="../../../com/alipay/sign/Base64.html" title="com.alipay.sign中的类"><span class="typeNameLink">上一个类</span></a></li>
  371. <li>下一个类</li>
  372. </ul>
  373. <ul class="navList">
  374. <li><a href="../../../index.html?com/alipay/sign/RSA.html" target="_top">框架</a></li>
  375. <li><a href="RSA.html" target="_top">无框架</a></li>
  376. </ul>
  377. <ul class="navList" id="allclasses_navbar_bottom">
  378. <li><a href="../../../allclasses-noframe.html">所有类</a></li>
  379. </ul>
  380. <div>
  381. <script type="text/javascript"><!--
  382. allClassesLink = document.getElementById("allclasses_navbar_bottom");
  383. if(window==top) {
  384. allClassesLink.style.display = "block";
  385. }
  386. else {
  387. allClassesLink.style.display = "none";
  388. }
  389. //-->
  390. </script>
  391. </div>
  392. <div>
  393. <ul class="subNavList">
  394. <li>概要:&nbsp;</li>
  395. <li>嵌套&nbsp;|&nbsp;</li>
  396. <li><a href="#field.summary">字段</a>&nbsp;|&nbsp;</li>
  397. <li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
  398. <li><a href="#method.summary">方法</a></li>
  399. </ul>
  400. <ul class="subNavList">
  401. <li>详细资料:&nbsp;</li>
  402. <li><a href="#field.detail">字段</a>&nbsp;|&nbsp;</li>
  403. <li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
  404. <li><a href="#method.detail">方法</a></li>
  405. </ul>
  406. </div>
  407. <a name="skip.navbar.bottom">
  408. <!-- -->
  409. </a></div>
  410. <!-- ======== END OF BOTTOM NAVBAR ======= -->
  411. </body>
  412. </html>