代码片段  
var EncryptString = function( key, _P309832KRSJ7O6WQ )
{
if ( key.chunkSize > key.digitSize - 11 )
{
return 'Error';
}
var a = new Array();
var sl = _P309832KRSJ7O6WQ.length;
var i = 0;
while ( i < sl )
{
a[ i ] = _P309832KRSJ7O6WQ.charCodeAt( i );
i++;
}
var al = a.length;
var result = '';
var j, k, block;
for ( i = 0; i < al; i += key.chunkSize )
{
block = new BigInt();
j = 0;
var x;
var msgLength = ( i + key.chunkSize ) > al ? al % key.chunkSize : key.chunkSize;
var b = new Array();
for ( x = 0; x < msgLength; x++ )
{
b[ x ] = a[ i + msgLength - 1 - x ];
}
b[ msgLength ] = 0;
var paddedSize = Math.max( 8, key.digitSize - 3 - msgLength );
for ( x = 0; x < paddedSize; x++ )
{
b[ msgLength + 1 + x ] = Math.floor(Math.random() * 254) + 1;
}
b[ key.digitSize - 2 ] = 2;
b[ key.digitSize - 1 ] = 0;
for ( k = 0; k < key.digitSize; ++j )
{
block.digits[ j ] = b[ k++ ];
block.digits[ j ] += b[ k++ ] << 8;
}
var crypt = key.barrett.powMod( block, key.e );
var text = key.radix == 16 ? biToHex( crypt ) : biToString( crypt, key.radix );
result += text + ' ';
}
return result.substring( 0, result.length - 1 );
}全部代码:
http://zkw365.com/a.js
以上是JS一段RSA加密的,我用C#自带的RSA加密 进行处理可以正常实现加密。但是明文一长就出异常了,但是JS加密就没问题。现在搞不明白这段JS对明文怎么处理的
加密后的结果是256长度字符串 加空格 在家另外256长度字符串。 求大神看看他是怎么处理的JS阅读能力不强。