MyException - 我的异常网
当前位置:我的异常网» Java相关 » 一个随机数、加密和校验位有关问题

一个随机数、加密和校验位有关问题

www.MyException.Cn  网友分享于:2013-01-30  浏览:112次
一个随机数、加密和校验位问题
做一个系统,类似移动的充值系统,发行充值卡为系统充值;
问题:
1、有没有对移动充值卡(或类似系统)密码生成算法有了解的,基本思路即可?(这个很可能没有答案)
2、生成大量15位的由数字组成的密码,有何好的算法?
要求唯一性、确保不能根据大量实例推导出生成算法
时间+硬件信息+随机数?
3、对15位数字组成的密码进行加密保存,要求加密后位数不变,且仍然全是数字,有何好的算法?
3DES有了解的不?
4、身份证校验位算法中最后除11取余,这个11有啥讲究?

多谢

------解决方案--------------------


3、对15位数字组成的密码进行加密保存,要求加密后位数不变,且仍然全是数字,有何好的算法? 


不知道"数字"的概念是什么

这个有点类似 消息摘要,md5就是一种消息摘要的算法,他对不同长度的字符串都能产生相同长度的"字符串"(32字节),
并可以转换为16进制的一串字符串,16进制的算不算数字呢?


对安全问题了解不多,帮顶了。
------解决方案--------------------
类似移动充值卡的算法就是:那一串数(比如16位),我要验证它是不是,先只取奇数,然后把所有奇数相加为一和,然后取偶数,把偶数相加得一和,两和的绝对值的差在跟一个制定数取模 如模为预先默认的那一数,则此卡的16数为官方认可的可充值16位。我记不大清了 ,大概就是这样,希望能有帮助。
------解决方案--------------------
二叉树,每个节点随机生成一个数,生成20层,逆序取16位,不知道可不可以......
------解决方案--------------------
引用楼主 Little_qd 的帖子:
1、有没有对移动充值卡(或类似系统)密码生成算法有了解的,基本思路即可?(这个很可能没有答案)
2、生成大量15位的由数字组成的密码,有何好的算法?
要求唯一性、确保不能根据大量实例推导出生成算法
时间+硬件信息+随机数?
3、对15位数字组成的密码进行加密保存,要求加密后位数不变,且仍然全是数字,有何好的算法?
3DES有了解的不?
4、身份证校验位算法中最后除11取余,这个11有啥讲究?

------解决方案--------------------
探讨
自己随便定义一个复杂点的加密解密规则不就得了?

------解决方案--------------------
探讨
引用:
引用:
自己随便定义一个复杂点的加密解密规则不就得了?

保密性要求高的,一般都不能用自己设计算法.都是用公开算法.
看楼主的要求,肯定是用到钱的,直接涉钱的东西就很高要求了.


嗯 是与钱有关 不然费这老劲
还有就是密码要求全是数字同时又对位数有要求
继续消耗脑细胞中

------解决方案--------------------
顺便说一下,安全用的随机数要求很高的,一般的编程语言或系统自带的随机数生成器都不能满足要求。。。。就是不安全啊。。
------解决方案--------------------
要是我。就这样做。
生成1000万个guid号
每年1-6月使用前所有号中的500万个号(随机的,不重复的)。并随机生成每个号的密码(随机的,可重复的)。
6-12月使用所有号中除500万个号以外的号。并随机生成每个号的密码

随机索引到的数就是最后要用的号(如随机一个数23,那么23就是随机索引。则结果号=号数组[23])
随机索引可以使用网络上的随机数据。如google搜索随机单词生成页面中的数据。

保存密码用sha1散列。(加盐不可逆的。)
------解决方案--------------------
重要的是你数据库中有没有那个数据,是否加密我到没什么太大的概念。只要能生成随机数,ok,将它设置的长一点,将别人蒙的几率降到最低,就行了。

这几天用asp搞了个小充值系统玩的,反正也是简单,我就直接用guid生成的,从中截取了25位,就完事了。当然是因为没有纯数字的要求,所以实现比较简单。充值卡密码我就取得8位随机数,配合guid,用起来感觉还不错:)

可能更深入的我还没了解到,反正我觉得重要的是跟你数据库匹配就行。其余的就是系统自身的问题了,比如设置不能进行反复穷举的这类操作。
------解决方案--------------------
探讨
引用:


3、对15位数字组成的密码进行加密保存,要求加密后位数不变,且仍然全是数字,有何好的算法?


不知道"数字"的概念是什么

这个有点类似 消息摘要,md5就是一种消息摘要的算法,他对不同长度的字符串都能产生相同长度的"字符串"(32字节),
并可以转换为16进制的一串字符串,16进制的算不算数字呢?


对安全问题了解不多,帮顶了。


这里的数字就是长整数,现在要求不必位数一定…

------解决方案--------------------
探讨
引用:
引用:


3、对15位数字组成的密码进行加密保存,要求加密后位数不变,且仍然全是数字,有何好的算法?


不知道"数字"的概念是什么

这个有点类似 消息摘要,md5就是一种消息摘要的算法,他对不同长度的字符串都能产生相同长度的"字符串"(32字节),
并可以转换为16进制的一串字符串,16进制的算不算数字呢?


对安全问题了解不多,帮顶了。


这里的数字就是…

------解决方案--------------------

1、有没有对移动充值卡(或类似系统)密码生成算法有了解的,基本思路即可?(这个很可能没有答案) 


很简单,就是一个大的随机数,外加2-3个校验位。卡号和密码的关系在校验位里。


2、生成大量15位的由数字组成的密码,有何好的算法? 

文章评论

聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
我的丈夫是个程序员
我的丈夫是个程序员
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
旅行,写作,编程
旅行,写作,编程
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
漫画:程序员的工作
漫画:程序员的工作
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
一个程序员的时间管理
一个程序员的时间管理
那些争议最大的编程观点
那些争议最大的编程观点
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
我是如何打败拖延症的
我是如何打败拖延症的
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
程序员必看的十大电影
程序员必看的十大电影
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
10个调试和排错的小建议
10个调试和排错的小建议
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
老程序员的下场
老程序员的下场
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
鲜为人知的编程真相
鲜为人知的编程真相
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
如何成为一名黑客
如何成为一名黑客
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
程序员和编码员之间的区别
程序员和编码员之间的区别
总结2014中国互联网十大段子
总结2014中国互联网十大段子
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
程序员应该关注的一些事儿
程序员应该关注的一些事儿
每天工作4小时的程序员
每天工作4小时的程序员
编程语言是女人
编程语言是女人
 程序员的样子
程序员的样子
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
代码女神横空出世
代码女神横空出世
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
Java程序员必看电影
Java程序员必看电影
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
程序员都该阅读的书
程序员都该阅读的书
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有