文档章节

水星mac1200R的密码加密方式

mhye
 mhye
发布于 2017/01/03 16:09
字数 379
阅读 72
收藏 0

之前介绍过如何通过脚本在局域网获取wan口ip:python读取路由信息 说到不知道它是怎么加密密码的,前几天闲得慌看了下,找到了这个函数。

js加密方法

//from web-static/lib/slp-ajax.js
securityEncode: function(input1, input2, input3)
		{
			var dictionary = input3;
			var output = "";
			var len, len1, len2, lenDict;
			var cl = 0xBB, cr = 0xBB;

			len1 = input1.length;
			len2 = input2.length;
			lenDict = dictionary.length;
			len = len1 > len2 ? len1 : len2;

			for (var index = 0; index < len; index++)
			{
				cl = 0xBB;
				cr = 0xBB;

				if (index >= len1)
				{
					cr = input2.charCodeAt(index);
				}
				else if (index >= len2)
				{
					cl = input1.charCodeAt(index);
				}
				else
				{
					cl = input1.charCodeAt(index);
					cr = input2.charCodeAt(index);
				}

				output += dictionary.charAt((cl ^ cr)%lenDict);
			}

			return output;
		},

		orgAuthPwd: function(pwd)
		{
			var strDe = "RDpbLfCPsJZ7fiv";
			var dic = "yLwVl0zKqws7LgKPRQ84Mdt708T1qQ3Ha7xv3H7NyU84p21BriUWBU43odz3iP4rBL3cD02KZciX"+
					  "TysVXiV8ngg6vL48rPJyAUw0HurW20xqxv9aYb4M9wK1Ae0wlro510qXeU07kV57fQMc8L6aLgML"+
					  "wygtc0F10a0Dg70TOoouyFhdysuRMO51yY5ZlOZZLEal1h0t9YQW0Ko7oBwmCAHoic4HYbUyVeU3"+
					  "sfQ1xtXcPcf1aT303wAQhv66qzW";

			return $.securityEncode(strDe, pwd, dic);
		},

python版

换成python的代码

def seurityEncode(password):
    '''
    首先,mercury的密码加密方式
    这个函数是参照Mercury路由器的js脚本写的,拿到手的几个路由器的start参数和字典都是一样的
    似乎并没有别的机制初始化starDe和dic
    '''
    output = ""
    start = "RDpbLfCPsJZ7fiv"
    dic = ("yLwVl0zKqws7LgKPRQ84Mdt708T1qQ3Ha7xv3H7NyU84p21BriUWBU43odz3iP4rBL3cD02KZciX"
           "TysVXiV8ngg6vL48rPJyAUw0HurW20xqxv9aYb4M9wK1Ae0wlro510qXeU07kV57fQMc8L6aLgML"
           "wygtc0F10a0Dg70TOoouyFhdysuRMO51yY5ZlOZZLEal1h0t9YQW0Ko7oBwmCAHoic4HYbUyVeU3"
           "sfQ1xtXcPcf1aT303wAQhv66qzW")

    lens = max(len(start),len(password))
    for i in range(lens):
        cl = 0xBB
        cr = 0xBB
        if i >= len(start):
            cr = ord(password[i])
        elif i >= len(password):
            cl = ord(start[i])
        else:
            cl = ord(start[i])
            cr = ord(password[i])
        output += dic[(cl^cr)%len(dic)]
return output

测试

#python测试
In [1]: from mercury import seurityEncode
In [2]: seurityEncode("abcde")
Out[2]: 'W74zUbhc9TefbwK'
//chrome控制台输出
$.orgAuthPwd("abcde")
"W74zUbhc9TefbwK"

好像没毛病,不过也只能用在局域网

另外:

上网搜了下"RDpbLfCPsJZ7fiv"和dic的一部分,好像tp-link的和水星都是用的一样的加密方法和字典,哎,这真是

© 著作权归作者所有

mhye
粉丝 0
博文 12
码字总数 7390
作品 0
合肥
私信 提问
python读取路由信息

手上有一台上古时代的tp-link,获取ip没问题,但是速度太慢,于是研究了水星mac1200R. 通过Firebug研究登陆可以知道 首先登陆的时候,需要将密码编码以后以json形式传给路由器,然后会响应你...

mhye
2016/08/01
122
0
BeagleBone Black使用无线网卡通过WIFI联网

按照惯例,还是先将要感谢的兄弟姐妹感谢完了再写正文。感谢CSDN论坛、EEWorld论坛上的兄弟姐妹,请原谅我在事后记录的时候忘了你们的大名,如果对大家有用,是你们的功力深厚,如果是对大家...

robeermy_cn
2014/03/12
4.1K
4
路由界的 2012,WPS一键加密惊爆安全漏洞

WPS加密惊爆安全漏洞 当今社会,生活节奏越来越快,一款网络设备是不是具有简单易用的特性,甚至决定了它的生存及竞争能力。对于无线路由器来讲,也是如此。从起初的手动加密到现在主流路由都...

tsl0922
2012/07/11
4.2K
30
水星MW300R路由器无线宽带上网设置教程

无线宽带路由上网设置(水星 MW300R) 首先点击电脑桌面(Internet Explorer)。 打开Internet Explorer后在地址栏输入(192.168.1.1)。 在(回车/Enter)。 在输入用户名(admin),密码(a...

上网设置
2017/11/13
0
0
水星三维引擎发布2.0版本 ~友情帮介绍下~

水星科技自主研发的三维引擎系统,功能完善,技术先进,内置编辑器功能,可应用于三维游戏、产品演示、操作培训等多种领域。 发展历程 该产品源自水星科技在三维虚拟现实领域的不断研发和项目...

离子翼
2013/03/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
9
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部