From 321c76f9f9bbec2690fcf5e1018993b4bdf970fd Mon Sep 17 00:00:00 2001 From: "WEBANK\\mingzhenliu" <42059349@qq.com> Date: Mon, 28 Aug 2023 15:31:17 +0800 Subject: [PATCH 1/2] add --- LICENSE | 201 ++++++++++ README.en.md | 2 +- README.md | 38 +- appendix.md | 37 ++ install.md | 72 ++++ vueapp/App.vue | 17 + vueapp/components/common.js | 192 ++++++++++ vueapp/index.html | 20 + vueapp/main.js | 22 ++ vueapp/manifest.json | 88 +++++ vueapp/pages.json | 38 ++ vueapp/pages/index/detail.vue | 261 +++++++++++++ vueapp/pages/index/footer.vue | 48 +++ vueapp/pages/index/index.vue | 347 ++++++++++++++++++ vueapp/pages/index/result.vue | 104 ++++++ vueapp/pages/index/veCode.vue | 241 ++++++++++++ vueapp/static/banner-search.jpg | Bin 0 -> 112561 bytes vueapp/static/bg_certificate.png | Bin 0 -> 25932 bytes vueapp/static/close.svg | 4 + vueapp/static/icon-no-result.png | Bin 0 -> 41514 bytes vueapp/static/icon-org.png | Bin 0 -> 393 bytes vueapp/static/icon-search.png | Bin 0 -> 1504 bytes vueapp/static/icon_back.png | Bin 0 -> 421 bytes vueapp/static/icon_certificate.png | Bin 0 -> 485 bytes vueapp/static/icon_certificate.svg | 7 + vueapp/static/logo-des.png | Bin 0 -> 23175 bytes vueapp/static/logo-suwiof.png | Bin 0 -> 8003 bytes vueapp/uni.scss | 76 ++++ .../_plugin-vue_export-helper.1b428a4d.js | 1 + .../h5/assets/bg_certificate-8c841469.png | Bin 0 -> 25932 bytes .../dist/build/h5/assets/close-45c18929.svg | 4 + .../dist/build/h5/assets/detail-72ede43c.css | 1 + .../dist/build/h5/assets/footer-eac86112.css | 1 + .../dist/build/h5/assets/footer.faacc807.js | 1 + .../h5/assets/icon-no-result-9970d565.png | Bin 0 -> 41514 bytes .../h5/assets/icon_certificate-53d2390e.svg | 7 + .../dist/build/h5/assets/index-44297b41.css | 1 + .../dist/build/h5/assets/index-58a655e0.css | 1 + .../dist/build/h5/assets/index-5cb22c7f.js | 6 + .../build/h5/assets/logo-des-cdf9e494.png | Bin 0 -> 23175 bytes .../build/h5/assets/logo-suwiof-1e8f0f27.png | Bin 0 -> 8003 bytes .../h5/assets/pages-index-detail.0b7e6303.js | 1 + .../h5/assets/pages-index-index.43b18482.js | 1 + .../h5/assets/pages-index-result.f15d8511.js | 1 + .../dist/build/h5/assets/result-0ab5fe3f.css | 1 + .../dist/build/h5/assets/uni.4f6b0b66.css | 1 + vueapp/unpackage/dist/build/h5/index.html | 24 ++ .../dist/build/h5/static/banner-search.jpg | Bin 0 -> 112561 bytes .../dist/build/h5/static/bg_certificate.png | Bin 0 -> 25932 bytes .../unpackage/dist/build/h5/static/close.svg | 4 + .../dist/build/h5/static/icon-no-result.png | Bin 0 -> 41514 bytes .../dist/build/h5/static/icon-org.png | Bin 0 -> 393 bytes .../dist/build/h5/static/icon-search.png | Bin 0 -> 1504 bytes .../dist/build/h5/static/icon_back.png | Bin 0 -> 421 bytes .../dist/build/h5/static/icon_certificate.png | Bin 0 -> 485 bytes .../dist/build/h5/static/icon_certificate.svg | 7 + .../dist/build/h5/static/logo-des.png | Bin 0 -> 23175 bytes .../dist/build/h5/static/logo-suwiof.png | Bin 0 -> 8003 bytes 58 files changed, 1842 insertions(+), 36 deletions(-) create mode 100644 LICENSE create mode 100644 appendix.md create mode 100644 install.md create mode 100644 vueapp/App.vue create mode 100644 vueapp/components/common.js create mode 100644 vueapp/index.html create mode 100644 vueapp/main.js create mode 100644 vueapp/manifest.json create mode 100644 vueapp/pages.json create mode 100644 vueapp/pages/index/detail.vue create mode 100644 vueapp/pages/index/footer.vue create mode 100644 vueapp/pages/index/index.vue create mode 100644 vueapp/pages/index/result.vue create mode 100644 vueapp/pages/index/veCode.vue create mode 100644 vueapp/static/banner-search.jpg create mode 100644 vueapp/static/bg_certificate.png create mode 100644 vueapp/static/close.svg create mode 100644 vueapp/static/icon-no-result.png create mode 100644 vueapp/static/icon-org.png create mode 100644 vueapp/static/icon-search.png create mode 100644 vueapp/static/icon_back.png create mode 100644 vueapp/static/icon_certificate.png create mode 100644 vueapp/static/icon_certificate.svg create mode 100644 vueapp/static/logo-des.png create mode 100644 vueapp/static/logo-suwiof.png create mode 100644 vueapp/uni.scss create mode 100644 vueapp/unpackage/dist/build/h5/assets/_plugin-vue_export-helper.1b428a4d.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/bg_certificate-8c841469.png create mode 100644 vueapp/unpackage/dist/build/h5/assets/close-45c18929.svg create mode 100644 vueapp/unpackage/dist/build/h5/assets/detail-72ede43c.css create mode 100644 vueapp/unpackage/dist/build/h5/assets/footer-eac86112.css create mode 100644 vueapp/unpackage/dist/build/h5/assets/footer.faacc807.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/icon-no-result-9970d565.png create mode 100644 vueapp/unpackage/dist/build/h5/assets/icon_certificate-53d2390e.svg create mode 100644 vueapp/unpackage/dist/build/h5/assets/index-44297b41.css create mode 100644 vueapp/unpackage/dist/build/h5/assets/index-58a655e0.css create mode 100644 vueapp/unpackage/dist/build/h5/assets/index-5cb22c7f.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/logo-des-cdf9e494.png create mode 100644 vueapp/unpackage/dist/build/h5/assets/logo-suwiof-1e8f0f27.png create mode 100644 vueapp/unpackage/dist/build/h5/assets/pages-index-detail.0b7e6303.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/pages-index-index.43b18482.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/pages-index-result.f15d8511.js create mode 100644 vueapp/unpackage/dist/build/h5/assets/result-0ab5fe3f.css create mode 100644 vueapp/unpackage/dist/build/h5/assets/uni.4f6b0b66.css create mode 100644 vueapp/unpackage/dist/build/h5/index.html create mode 100644 vueapp/unpackage/dist/build/h5/static/banner-search.jpg create mode 100644 vueapp/unpackage/dist/build/h5/static/bg_certificate.png create mode 100644 vueapp/unpackage/dist/build/h5/static/close.svg create mode 100644 vueapp/unpackage/dist/build/h5/static/icon-no-result.png create mode 100644 vueapp/unpackage/dist/build/h5/static/icon-org.png create mode 100644 vueapp/unpackage/dist/build/h5/static/icon-search.png create mode 100644 vueapp/unpackage/dist/build/h5/static/icon_back.png create mode 100644 vueapp/unpackage/dist/build/h5/static/icon_certificate.png create mode 100644 vueapp/unpackage/dist/build/h5/static/icon_certificate.svg create mode 100644 vueapp/unpackage/dist/build/h5/static/logo-des.png create mode 100644 vueapp/unpackage/dist/build/h5/static/logo-suwiof.png diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.en.md b/README.en.md index 2802225..190655e 100644 --- a/README.en.md +++ b/README.en.md @@ -1,4 +1,4 @@ -# WeBASE-Cdappf +# certificateClient #### Description {**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} diff --git a/README.md b/README.md index 0a1961f..a0ca1ac 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,7 @@ -# WeBASE-Cdappf +# certificateClient #### 介绍 -{**以下是 Gitee 平台说明,您可以替换此简介** -Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} +本工程为前端页面,基于[uniapp](https://uniapp.dcloud.net.cn/)开发。 -#### 软件架构 -软件架构说明 +[部署说明](./install.md) - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/appendix.md b/appendix.md new file mode 100644 index 0000000..2645566 --- /dev/null +++ b/appendix.md @@ -0,0 +1,37 @@ +## 附录 +### 1 安装nginx +#### 1.1 下载nginx依赖 +在安装nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。如果没有,请执行命令 + + yum -y install gcc pcre-devel zlib-devel openssl openssl-devel +执行命令时注意权限问题,如遇到,请加上sudo +#### 1.2 下载nginx +nginx下载地址:https://nginx.org/download/(下载最新稳定版本即可) +或者使用命令: + + wget http://nginx.org/download/nginx-1.9.9.tar.gz (版本号可换) +#### 1.3 安装nginx +##### 1.3.1 解压 + tar -zxvf nginx-1.9.9.tar.gz + +##### 1.3.2 进入nginx目录 + + cd nginx-1.9.9 +##### 1.3.3 配置 + + ./configure --prefix=/usr/local/nginx + +##### 1.3.4 make + + make & make install +##### 1.3.5 启动 + /usr/local/nginx/sbin/nginx +##### 1.3.6 nginx几个常见命令 +```shell +/usr/local/nginx/sbin/nginx -s reload # 重新载入配置文件 +/usr/local/nginx/sbin/nginx -s reopen # 重启 Nginx +/usr/local/nginx/sbin/nginx -s stop # 停止 Nginx +ps -ef | grep nginx # 查看nginx进程 +``` + + diff --git a/install.md b/install.md new file mode 100644 index 0000000..2fea851 --- /dev/null +++ b/install.md @@ -0,0 +1,72 @@ +## 部署说明 + +### 1. 依赖环境 + +| 环境 | 版本 | +| ------ | --------------- | +| nginx | nginx1.6或以上版本,安装请参考[附录](appendix.html) | +| HBuilderX | [HBuilderX官网](https://www.dcloud.io/hbuilderx.html) | + +### 2. 拉取代码 + +执行命令: + +```shell +git clone https://gitee.com/weizhong-shenda-zhengshu/certificateClient.git +``` + +### 3. 编译代码 +现有代码已编译,在以下目录,将已编译文件打包上传服务器。如需重新编译,使用HBuilderX发行。 +```shell +./certificateClient/vueapp/unpackage/dist/build/h5 +``` + +### 4. 修改配置 + +在服务器已有nginx的配置文件`/usr/local/nginx/conf/nginx.conf`增加一个server: + +``` + server { + listen 80; + server_name 127.0.0.1; + location / { + root /data/fintech/h5; # 静态页面路径 + index index.html index.htm; + add_header Cache-control no-cache; + try_files $uri $uri/ /index.html =404; + } + + include /etc/nginx/default.d/*.conf; + + location /fintech-cert { + proxy_pass http://127.0.0.1:8081/fintech-cert/; # 后端服务链接 + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } + + error_page 404 /404.html; + location = /40x.html { + } + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + } + } +``` + +### 5. 启动nginx + + /usr/local/nginx/sbin/nginx # 启动 Nginx + /usr/local/nginx/sbin/nginx -s reload # 重新载入配置文件 + /usr/local/nginx/sbin/nginx -s reopen # 重启 Nginx + /usr/local/nginx/sbin/nginx -s stop # 停止 Nginx + ps -ef | grep nginx # 查看nginx进程 + +### 6. 查看日志 + +``` +进程日志:tail -f /usr/local/nginx/logs/access.log +错误日志:tail -f /usr/local/nginx/logs/eror.log +``` + diff --git a/vueapp/App.vue b/vueapp/App.vue new file mode 100644 index 0000000..2457395 --- /dev/null +++ b/vueapp/App.vue @@ -0,0 +1,17 @@ + + + \ No newline at end of file diff --git a/vueapp/components/common.js b/vueapp/components/common.js new file mode 100644 index 0000000..b9ee538 --- /dev/null +++ b/vueapp/components/common.js @@ -0,0 +1,192 @@ +export function uuid() { + var s = []; + var hexDigits = "0123456789abcdef"; + for (var i = 0; i < 36; i++) { + s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1); + } + s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010 + s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01 + s[8] = s[13] = s[18] = s[23] = "-"; + + var uuid = s.join(""); + return uuid; +} + +export function MD5(sMessage) { + function RotateLeft(lValue, iShiftBits) { + return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits)); + } + function AddUnsigned(lX, lY) { + var lX4, lY4, lX8, lY8, lResult; + lX8 = (lX & 0x80000000); + lY8 = (lY & 0x80000000); + lX4 = (lX & 0x40000000); + lY4 = (lY & 0x40000000); + lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF); + if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8); + if (lX4 | lY4) { + if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8); + else return (lResult ^ 0x40000000 ^ lX8 ^ lY8); + } else return (lResult ^ lX8 ^ lY8); + } + function F(x, y, z) { + return (x & y) | ((~x) & z); + } + function G(x, y, z) { + return (x & z) | (y & (~z)); + } + function H(x, y, z) { + return (x ^ y ^ z); + } + function I(x, y, z) { + return (y ^ (x | (~z))); + } + function FF(a, b, c, d, x, s, ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + function GG(a, b, c, d, x, s, ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + function HH(a, b, c, d, x, s, ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + function II(a, b, c, d, x, s, ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + function ConvertToWordArray(sMessage) { + var lWordCount; + var lMessageLength = sMessage.length; + var lNumberOfWords_temp1 = lMessageLength + 8; + var lNumberOfWords_temp2 = (lNumberOfWords_temp1 - (lNumberOfWords_temp1 % 64)) / 64; + var lNumberOfWords = (lNumberOfWords_temp2 + 1) * 16; + var lWordArray = Array(lNumberOfWords - 1); + var lBytePosition = 0; + var lByteCount = 0; + while (lByteCount < lMessageLength) { + lWordCount = (lByteCount - (lByteCount % 4)) / 4; + lBytePosition = (lByteCount % 4) * 8; + lWordArray[lWordCount] = (lWordArray[lWordCount] | (sMessage.charCodeAt(lByteCount) << lBytePosition)); + lByteCount++; + } + lWordCount = (lByteCount - (lByteCount % 4)) / 4; + lBytePosition = (lByteCount % 4) * 8; + lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition); + lWordArray[lNumberOfWords - 2] = lMessageLength << 3; + lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29; + return lWordArray; + } + function WordToHex(lValue) { + var WordToHexValue = "", + WordToHexValue_temp = "", + lByte, lCount; + for (lCount = 0; lCount <= 3; lCount++) { + lByte = (lValue >>> (lCount * 8)) & 255; + WordToHexValue_temp = "0" + lByte.toString(16); + WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length - 2, 2) + } + return WordToHexValue; + } + var x = Array(); + var k, AA, BB, CC, DD, a, b, c, d + var S11 = 7, + S12 = 12, + S13 = 17, + S14 = 22; + var S21 = 5, + S22 = 9, + S23 = 14, + S24 = 20; + var S31 = 4, + S32 = 11, + S33 = 16, + S34 = 23; + var S41 = 6, + S42 = 10, + S43 = 15, + S44 = 21; + x = ConvertToWordArray(sMessage); + a = 0x67452301; + b = 0xEFCDAB89; + c = 0x98BADCFE; + d = 0x10325476; + for (k = 0; k < x.length; k += 16) { + AA = a; + BB = b; + CC = c; + DD = d; + a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478); + d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756); + c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB); + b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE); + a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF); + d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A); + c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613); + b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501); + a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8); + d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF); + c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1); + b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE); + a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122); + d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193); + c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E); + b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821); + a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562); + d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340); + c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51); + b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA); + a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D); + d = GG(d, a, b, c, x[k + 10], S22, 0x2441453); + c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681); + b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8); + a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6); + d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6); + c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87); + b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED); + a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905); + d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8); + c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9); + b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A); + a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942); + d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681); + c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122); + b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C); + a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44); + d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9); + c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60); + b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70); + a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6); + d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA); + c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085); + b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05); + a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039); + d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5); + c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8); + b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665); + a = II(a, b, c, d, x[k + 0], S41, 0xF4292244); + d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97); + c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7); + b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039); + a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3); + d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92); + c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D); + b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1); + a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F); + d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0); + c = II(c, d, a, b, x[k + 6], S43, 0xA3014314); + b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1); + a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82); + d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235); + c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB); + b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391); + a = AddUnsigned(a, AA); + b = AddUnsigned(b, BB); + c = AddUnsigned(c, CC); + d = AddUnsigned(d, DD); + } + var temp = WordToHex(a) + WordToHex(b) + WordToHex(c) + WordToHex(d); + return temp.toLowerCase(); +} diff --git a/vueapp/index.html b/vueapp/index.html new file mode 100644 index 0000000..c3ff205 --- /dev/null +++ b/vueapp/index.html @@ -0,0 +1,20 @@ + + +
+ + ++ {{ JSON.parse(item).filedNameZh }} + {{ JSON.parse(item).filedDemo }} +
+未能搜索到您的证书
+YEl9{~V8nE+=P#wcSpA2P{hBYIxoJMF3$CfubK%$o5DA#8
zHY#*^U&TR_o_cT<$g=bWEz-kT1@uO@?L`&`D8eUAJK*%nvZTv!V0O~HLV52fCnA5z
zA}K?bN(arnXrgyLRfnHPoDHmaI$!t%=>voV6BDh_( evvsC2fb!?=)tOfB;{OS!K}wQsZp401oOQ)}?k-7qoOhhJxE&CNY)
zyL+`ke_85;2#1u`kUdn8jVy&~3aslxCZJ;_o;|#yJuJ?7@drCVB-AGB*Wibv8oj5H
z+ERjyq4GP&mLtX9hddB)R|LL!dCFX~DQzc_5yR_uqJqAee*vAfO6}Offzv<3yVUMc
z@hhX(qDH@pEo941d2}X_-`L?ipPjt2A~h;y8{fqEks=@eQ%KllB*r1*(f`=OWH5J_;GIMX?j-2At9aD;BpkoTtnNzJeAoGQ5whw
AMO%LPL89%8}Q~*Wod~ME=d|cPjx-L`x)Pw@QX{gKc$;?(KFY5<8yy&;E59;D(Af$6L|9d6Ha0B~
zT`RqmtM_uGw#OtlYtRHKmR9S5wA$+7)Ic9esYslj=r^@a)^
8p$zhGu(X0~P{D?9-*Ty(hgg@GpG_U{7pn5YGl^s;0)oNce
ziR4p-u4KOkH;K(xS&U;tTC8JC`488eeoc+(IhhGk67rmVg`3$(b;T(p9(GNW?yo~r
z-%NJ+V9T}bw^ARZzKZ1cdyhO^RzDWV@#GfKSX-Qs+HQcO_`F(DF11v()?Nc)n;xAD
z&O`ZE%p@sMGtr$$)OqbV$oKS@ZAe_`zNw8=Np~(k%ZA){6M)P-^^1?q42KeKm7#{g
zO4D#WC(Smc^WV&p@EcTG&P_)-Fu}u5m<^0*?z*395J>vPQAn{=cS$c6d`G$GC3*Qs
zX#q<@{E)NaC(8l7FZ~+Yt*FH!<;l+1m!?m)cIG_ecK$OSMT|JCut$4sgrBmpr!2P0
zQ+aKaA711>cFb&aad{HmUzU-?s3XZhAJ=^}31)F#-24sSK#EeF-)Q6G{{TYA>EEY#
zU6+Jr97d45g3t{7he-1taO$rWt`HBxpVMOL