@@ -100,7 +100,7 @@ Abracadabra.DECRYPT = "DECRYPT";
100100强制解密
101101
102102*/
103- Abra .Input_Next (input,mode,key,q,r)
103+ Abra .Input_Next (input,mode,key,q,r,p,l )
104104```
105105
106106第一个参数 ` input ` 接受两种类型的输入,分别是 ` String ` 和 ` Uint8Array ` ,这是此前在实例化的时候指定的输入类型。
@@ -113,11 +113,17 @@ Abra.Input_Next(input,mode,key,q,r)
113113
114114如果指定了错误的密码,那么在解码/解密数据校验过程中会抛出错误。
115115
116- 第四个参数 ` q ` 接受布尔值的输入,如果传入 ` true ` ,则加密结果中将不含标点符号,解密时可以忽略这个参数。
116+ 第四个参数 ` q ` 接受布尔值的输入,默认为 ` true ` 。如果传入 ` false ` ,则加密结果中将不含标点符号,解密时可以忽略这个参数。
117117
118- 第五个参数 ` r ` 接受整数值的输入,最小值` 0 ` ,最大值` 100 ` ,超过 100 的输入将会报错。输入值越大,句式选择算法的随机性越大 ;输入值为 0 时,句式选择步骤将只选择载荷字最多的那个 。
118+ 第五个参数 ` r ` 接受整数值的输入,默认为 ` 50 ` , 最小值` 0 ` ,最大值` 100 ` ,超过 100 的输入将会报错。输入值越大,载荷量选择算法的随机性越大 ;输入值为 0 时,句式选择步骤将只选择载荷字较多的那个。解密时可以忽略这个参数 。
119119
120- 在无错误的情况下, ` Input() ` 函数的返回值通常是 ` 0 ` 。
120+ 第六个参数 ` p ` 接受布尔值的输入,默认为 ` false ` 。如果传入 ` true ` ,则加密结果会优先使用骈文句式,呈现四字到五字一组的对仗格律,这有助于减少密文的总体长度。解密时可以忽略这个参数。
121+
122+ 第七个参数 ` l ` 接受布尔值的输入,默认为 ` false ` 。如果传入 ` true ` ,则加密结果会优先使用逻辑句式,呈现强论述类逻辑风格。解密时可以忽略这个参数。
123+
124+ ` p ` 和 ` l ` 不能同时指定为 ` true ` ,否则会抛出错误。
125+
126+ 在无错误的情况下, ` Input_Next() ` 函数的返回值通常是 ` 0 ` 。
121127
122128#### Output()
123129
@@ -150,14 +156,16 @@ let Result = Abra.Output() //获取输出
150156``` json
151157
152158{
153- "method" :" " , // NEXT | OLD //前者是仿真加密,后者是传统加密
159+ "method" :" " , // NEXT | OLD
154160 "inputType" :" " , // TEXT | UINT8
155161 "outputType" :" " , // TEXT | UINT8
156162 "input" :" " , //输入的数据,如果是TEXT请直接输入纯文本,如果是任意字节,请输入Base64编码字符串
157163 "mode" :" " , // ENCRYPT | DECRYPT | AUTO // AUTO 仅在 method 指定 OLD 时合法
158- "key" :" " , //加密密钥,一个字符串,不可缺省,JavaScript实现的默认值为 ABRACADABRA
159- "q" :bool, //OLD模式下,决定是否去除标志位 | NEXT模式下,决定输出密文是否有标点符号
164+ "key" :" " , //加密密钥,一个字符串 //如果缺省,自动使用默认值
165+ "q" :bool, //OLD模式下,决定是否添加标志位 | NEXT模式下,决定输出密文是否有标点符号
160166 "r" :number, //仅NEXT模式下需要:算法的随机程度,越大随机性越强,默认 50,最大100,超过100将会出错;
167+ "p" :bool, //仅NEXT模式下需要:尽可能使用对仗的骈文句式; 与逻辑句式冲突
168+ "l" :bool, //仅NEXT模式下需要:尽可能使用逻辑句式; 与骈文句式冲突
161169
162170}
163171
@@ -171,7 +179,7 @@ let Result = Abra.Output() //获取输出
171179
172180``` shell
173181
174- echo ' {"method":"NEXT","mode":"ENCRYPT","inputType":"TEXT","outputType":"TEXT","input":"测试 ","key":"ABRACADABRA","q":true,"r":50}' | wasmtime abracadabra-cn.wasm
182+ echo ' {"method":"NEXT","mode":"ENCRYPT","inputType":"TEXT","outputType":"TEXT","input":"愿青空的祝福,与我的羽翼同在 ","key":"ABRACADABRA","q":true,"r":50,"p":false,"l":false }' | wasmtime abracadabra-cn.wasm
175183
176184```
177185
0 commit comments