`
kenken0y
  • 浏览: 36874 次
社区版块
存档分类
最新评论

金蝶KIS商贸版无损解密用户密码

阅读更多

金蝶KIS商贸版的密码忘记了,有人说可以

update t_user set fsid=null where fname='manager'
来清除密码

 

看了一下密码明文,觉得比较有规律,写了一个无损解密程序

 

#= 金蝶KIS商贸版密码解密
class KisDecode
  def self.decode(s)
    s1 = s[")  F \", ,P T #8 *P!D &D 80!N &@ <0 C '< : !M &4 )0".size..-1]
    index = 0
    s2 = []
    while index<s1.size
      s2 << s1[index..index+7]
      index+=8
    end
    ret = ""
    s2.each do |seg|
      a1 = seg[0..1]
      ret << ((a1[0]*64 + a1[1] - 2080 )/(4**0)).chr if a1=~/\S/
      a2 = seg[3..4]
      ret << ((a2[0]*64 + a2[1] - 2080 )/(4**1)).chr if a2=~/\S/
      a3 = seg[6..7]
      ret << ((a3[0]*64 + a3[1] - 2080 )/(4**2)).chr if a3=~/\S/
    end
    return ret
  end
end
mingwen = ""
while true
  puts "mingwen:"
  mingwen = $stdin.read
  break if mingwen=~/^by/ || mingwen=~/^ex/
  puts KisDecode.decode(mingwen.rstrip)
end
# 运行方式:在cmd窗口中 ruby kis_decode.rb
#明文请 select * from t_user,fsid是明文字段,测试用明文:
#)  F ", ,P T #8 *P!D &D 80!N &@ <0 C '< : !M &4 )0 Q #( ,P T #4 -@ W #@ .0 P "D *  J "8 7@ E "0 (P!  "$ 
#输入以上明文回车,然后^Z(window下命令行中^Z表示结束)
#解密以后是:1234567890)(*&^%$#@!

 

分享到:
评论
3 楼 ljz6600 2015-01-30  
感谢,已转换为Powerbuilder源码
2 楼 lzgyl 2012-06-08  
已收藏,发现K3也可以用,感谢。
1 楼 yicixingID 2012-05-11  
怎么用啊

相关推荐

Global site tag (gtag.js) - Google Analytics