php 两个字符串xor,使用JavaScript实现PHP字符串xor
我想将这个
PHP代码$a ^ $b(其中a的长度为16,b为32)转换为javascript代码.这是我的实施.
var xor = "";
for (var i = 0; i < a.length; i++) {
xor += String.fromCharCode(a.charCodeAt(i) ^ b.charCodeAt(i));
}
xor = b.substr(-16) + xor;
但是,结果不一样.请帮我解决一下.谢谢.
顺便说一句,这是我正在解决的代码部分:
var secret = "secret";
var password = "password";
var chal = "2ba5565a539c57c1ce2356e218faa321";
var hexchal = php.pack('H32', chal);
var newchal, newpwd, pappassword;
newchal = php.pack('H*', php.md5(hexchal + secret));
newpwd = php.pack("a32", password);
var xor = "";
for (var i = 0; i < newchal.length; i++) {
xor += String.fromCharCode(newchal.charCodeAt(i) ^ newpwd.charCodeAt(i));
}
xor = newpwd.substr(-16) + xor;
相应的PHP代码:
$secret = "secret";
$password = "password";
$chal = "2ba5565a539c57c1ce2356e218faa321";
$hexchal = pack ("H32", $chal);
$newchal = pack ("H*", md5($hexchal . $secret));
$newpwd = pack("a32", $password);
$pappassword = implode ("", unpack("H32", ($newpwd ^ $newchal)));
echo $pappassword;
?>
其中a和b分别是newchal和newpwd. php.func()来自http://phpjs.org/.预期输出为“821f984aa1062e56dbdc8f77454e5eb3”.
php 两个字符串xor,使用JavaScript实现PHP字符串xor相关推荐
- 3种JavaScript 数组转换为字符串的方法
英文 | https://javascript.plainenglish.io/how-to-convert-a-javascript-array-into-a-string-f066c8839a1d ...
- JavaScript 数值转换为字符串
Javascript中的toString()方法与数字一起使用,并将数字转换为字符串.toString()函数用于返回表示指定Number对象的字符串. Javascript Int到字符串 要将Ja ...
- 在JavaScript中重复字符串的三种方法
In this article, I'll explain how to solve freeCodeCamp's "Repeat a string repeat a string" ...
- JavaScript中的字符串操作(转)
http://www.cnblogs.com/xuebin/articles/1296837.html 最近编一个javascript的翻译程序,发现无法正确比较两个字符串的相等,上网查了查,发现这篇 ...
- JavaScript基础——处理字符串
String对象是迄今为止在JavaScript中最常用的对象.在你定义一个字符串数据类型的变量的任何时候,JavaScript就自定为你创建一个String对象.例如: var myStr = &q ...
- 解析JavaScript中的字符串类型与字符编码支持
JavaScript中的字符串也像Python那样支持反斜杠的转移,并且字符集方面默认为Unicode,下面就来详细解析JavaScript中的字符串类型与字符编码支持 定义 字符串就是零个或多个排在 ...
- php如何传递字符串,如何将PHP字符串传递给Javascript函数调用?
本问题已经有最佳答案,请猛点这里访问. Possible Duplicate: Pass a PHP string to a Javascript variable (and escape newli ...
- 在JavaScript中反转字符串的三种方法
This article is based on Free Code Camp Basic Algorithm Scripting "Reverse a String" 本文基于F ...
- c替换指定位置字符串_【JavaScript】字符串
字符串 字符串可以是插入到引号中的任何字符.你可以使用单引号或双引号: var carname = "MI"; 可以使用索引位置来访问字符串中的每个字符: var characte ...
最新文章
- WCF实现RESTFul Web Service
- git 提交跳过检查
- vc++获取的蓝牙设备信息中rssi的值_Android低功耗蓝牙总结
- rest-assured之Schema validation(包括JSON Schema validation及Xml Schema validation)
- hadoop设置ssh免密码登录
- java如何进行字符串拼接?
- [PAT乙级]1022 D进制的A+B
- Linux命令:find命令详解
- maven的系统变量设置
- Scrum Master
- zabbix 通过 zabbix-agent 方式监控 Windows主机
- sql2005性能优化(在32位系统上突破2G内存使用量的方法)
- C# 处理应用程序减少内存占用
- 2.页面截长图工具-FireShot
- 【Linux系列文章】网络配置
- 手把手教你用SetWindowsHookEx做一个键盘记录器
- Netcdf4.4的安装过程(附netcdf4.1.3的安装过程)
- 详解量子计算:相位反冲与相位反转
- 红帽linux安装打印机教程,RHEL5下安装纯文本打印机试验步骤记
- 哪个录音软件最好用?推荐几款录音软件给你
热门文章
- 【itext学习之路】-------(第四篇)给pdf增加文本水印和图片水印
- 为什么大部分牛人会选择通达信交易接口?
- tablepage说明文档
- SpringSecurity前后端分离登录认证
- Java 工程师岗位要求(支付)
- UI/UE实战之一:巧用Photoshop实现商业人像修图-CSDN公开课-专题视频课程
- 计算机科学与技术高校学科评估排名,教育部06高校学科评估排名:0812 计算机科学与技术...
- cs109-energy+哈佛大学能源探索项目 Part-3(探索性分析)
- PC微信逆向:使用HOOK获取好友列表和群列表
- 【自考】计算机网络原理概述