1.0.3 • Published 2 years ago

pyz-security v1.0.3

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

加密插件-中国

Pyz-Security

  • Pyz-Security 一款封装图形可选的加密、解密插件。

Install

npm install --save pyz-security

Build Status NPM Version NPM Downloads Install Size

//  commonjs Nodejs
import { Security } from 'pyz-security/lib/common'
Security.decode(Security.encode('密钥','时间戳');)

// ESmodule
import {Esm_Security} from 'pyz-security'
Esm_Security.Security.encode('密钥','时间戳');
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="./lib/Security.js">

    </script>
    <title>Document</title>
    <style type="text/css">
       .DONS { height: 200px; border: 1px solid #f00; display: flex; flex-direction: row; justify-content: flex-start;
       align-items: center; 
    }
    .DONS > div:first-child { width: 10%; height: 100%; }
    .DONS > div:last-child { width: 90%; height: 100%; }
    </style>
</head>
<body>
    <div class="DONS">
      <div>

      </div>
      <div id="COOS">

      </div> 
    </div>
    <!-- 滑块加密模式 module-->
    <script type="module">
      import {Esm_Security} from './index.js';
      console.log(Esm_Security)
      console.log('加密_ESM', Esm_Security.Security.encode('你的名字', '32844339242940'))
      console.log('解密_ESM', Esm_Security.Security.decode(Esm_Security.Security.encode('你的名字', '32844339242940')))
      Esm_Security.Security.clientToSecurity({
        targetDOM: document.getElementById('COOS'),
        leftLimiter: document.querySelector('.DONS > div:first-child').clientWidth,
        success: (result)=>{
           console.log(result)
        }
      });
   </script>
    <!-- 加密模式 -->
    <script>
       var tmp = new Date().getTime();
       console.log('加密', Security.encode('彭一真', tmp))
       console.log('解密', Security.decode(Security.encode('彭一真', tmp)))
       Security.clientToSecurity({
         targetDOM: document.getElementById('COOS'),
         leftLimiter: document.querySelector('.DONS > div:first-child').clientWidth,
         success: (result)=>{
            console.log(result)
         }
       });
    </script>
</body>
</html>
/**
 * @上文打印
 */
// Bowser
加密 Z1J0EfZ1J0BDZ1J0ADZ1J0EeZ1J0BiZ1J0iaZ1J0EhZ1J0kCZ1J0kFZ1J0dDbghfcccgfgiig
index.html:49 解密 彭一真=1675222656886
// ESM
加密_ESM Z1J0EeZ1J0BDZ1J0AaZ1J0EhZ1J0kAZ1J0ieZ1J0EfZ1J0kaZ1J0iDZ1J0EfZ1J0ADZ1J0khZ1J0dDdcieeddkceckea
index.html:36 解密_ESM 你的名字=32844339242940
/**
 * @SDK API文档 
 */
export declare namespace Esm_Security {
    interface ClientOption {
        targetDOM?: HTMLElement | Element;
        overrideCss?: string;
        leftLimiter?: any | number;
        success?: Function;
    }
    interface MouseEventStatus {
        down?: boolean;
        move?: boolean;
        up?: boolean;
    }
    class Security {
        private static keyGin;
        private static CODE_MATCH;
        private static arrMap;
        private static reversMap;
        constructor();
        /**
         * @init 初始化滑块系统
         */
        static init(): void;
        /**
         * @params password  明文  
         * @params token  签名 /  时间戳
         * @returns 密文
         */
        static encode(password: string, token?: string): string; 
        /**
         * @params encodeStr  密文  
         * @returns 名文  
         */
        static decode(encodeStr: string): string;
        private static _encodeURIString;
        private static _parseHashMap;
        private static _decodeHashMap;
        private static _decodeURIString;
        /**
         * @clientToSecurity 验证滑块系统安全
         */
        static clientToSecurity(securityOption?: ClientOption): void;
    }
}

Browser Support

  • Commond
  • ES6 module ESM

作者

  • 彭一真

LICENSE

MIT

1.0.2

2 years ago

1.0.3

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago