pyz-security
v1.0.3
Published
安全验证,滑块验证,加密,解密
Downloads
26
Readme
加密插件-中国
Pyz-Security
- Pyz-Security 一款封装图形可选的加密、解密插件。
Install
npm install --save pyz-security
// 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
作者
- 彭一真