C#加密狗的实现

现在有个关于类似网银U盾一样的运用需要实现,可是无从入手。不知道哪位高手可以给支招一下。具体目的为:1:实现拥有加密狗(或U盾)可以实现移动性的使用软件,并且对部分加密狗... 现在有个关于类似网银U盾一样的运用需要实现,可是无从入手。不知道哪位高手可以给支招一下。具体目的为:

1:实现拥有加密狗(或U盾)可以实现移动性的使用软件,并且对部分加密狗实现IP或者MAC限制(CPU编号,或者硬盘也行,关键是限制其使用地点。)。
目前我的实现思路1是,winform类似U盘的装在客户端,然后随身携带U盘,使用U盘里的客户端便可以连接服务器,服务器再对客户端进行IP和MAC等的限制。
缺陷:由于使用c#开发,那么就必须在预装了.net framework 才可以正常使用。
实现思路2是,webform类似网上银行一样,做个U盾。(无全没写加密狗的经验),然后对IP和MAC等进行限制。

不知道哪位还有其他的建议,或者实现的方法。如果没有那么是否可以提供一下类似U盾的制作和使用的方法或例子。
回答一旦被采纳,另外加分。
首先谢谢 leo_fei5210的回答。限制IP或者MAC,主要是要限制登入地点。这是客户的要求。这个可以根据访问来源进行判断限制。现在主要是的一个安全访问的限制。也可以说是身份验证吧,哈,好像自己有点乱。
我现在的想法是ASP.NET+ActiveX做类似U盾一样的功能。就是不知道从那里入手。还忘详细赐教。
要是WINFROM+加密狗的话那么就像我在问题中提到的,移动性能太差了,必须要在.net环境中也就是必须预装.net framework 才可以正常使用。
展开
 我来答
互联网纷说
2019-06-10 · 分享互联网大事件,运营事件,热点分析
互联网纷说
采纳数:67 获赞数:223

向TA提问 私信TA
展开全部
对部分加密狗实现IP或者MAC限制,精锐5加密锁可实现绑定本机设备。
C#程序使用精锐5加密狗的方式来实现软件的加密保护及授权管理,需考虑安全及授权管理两方面。
加密的安全性,不能随便被破。精锐5加密锁的加密技术由:代码加密/代码碎片化/代码混淆。
代码碎片化:深思自主知识产权的最新技术:基于 LLVM 和 ARM 虚拟机技术,自动抽取海量代码移入 SS 内核态模块,极大的降低了使用门槛, 不再需要手动移植算法,可移植的算法从有限的几个增长到几乎无限多,支持的语言也不再限于 C, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,让破解者无从下手。
代码加密(IL):针对dotNet程序,保护IL代码:一种动态运行方法解密被保护代码。把当前代码加密存储为密文,存储起来,当程序运行到被保护函数时候自动解密并且执行,执行之后再擦除代码,执行之后再擦除代码,运行到哪里才解密哪里的代码,黑客无法获得原始的中间语言的指令和内存完整性的代码,由于是纯内存操作所以运行速度快, 性价高的保护手段,建议全加。
代码混淆(IL):
将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。比如改写成单个字母,或是简短的无意义字母组合,甚至改写成“__”这样的符号,使得阅读的人无法根据名字猜测其用途。
a)重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式。比如将for循环改写成while循环,将循环改写成递归,精简中间变量,等等。
b) 打乱代码的格式。比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。
c) 添加花指令,通过特殊构造的指令来使得反汇编器出错,进而干扰反编译工作的进行。
加密锁本身的安全:
内置安全算法
精锐5加密狗内置安全算法有:
RSA1024/RSA2048
ECC192/ECC256/ECC384
AES128/AES192/AES256
DES/TDES
SHA1/SHA256
存储空间:目前加密锁存储空间最大可达到512K。
接口标准:USB2.0全速设备
加密方式:加壳工具
加壳工具可快速的对代码进行加密保护,无需修改代码,几分钟即可完成高安全性加密。
五米菌
2009-03-21 · 超过27用户采纳过TA的回答
知道答主
回答量:170
采纳率:0%
帮助的人:90.1万
展开全部
我们公司用的加密狗,就是一个和加密狗中唯一序列号比对的一种东西,比较简单,在后台对用户登陆名称和序列号绑定实现软件的加密!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leo_fei5210
2009-03-21 · TA获得超过306个赞
知道小有建树答主
回答量:455
采纳率:0%
帮助的人:237万
展开全部
你参考下用友加密狗的做法呗,你要是限制IP那换个IP人家的软件不就不能用了啊,其实就是个驱动机制,不插的时候,只能是试用版,插上以后变为正式版,然后可以根据版本的型号来判断,1.0.0.0是正式版,1.0.0.1为测试版,版本可以利用反射得到,然后判断现在的版本是否等于1.0.0.0,如果不等于就提醒升级或者3个月作废,然后编写一个程序寿命的程序,我是这样想的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
户书昳JE
2009-03-24
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
你的问题是一个很简单的身份认证问题,而一般的加密狗是指的软件版权保护产品,防止软件被复制盗版的。而使用USBkey身份认证令牌就可以取代用户名密码做安全的身份认证,可以防止用户名密码被共享。如果需要详细方案和例子程序,我可以发给你。你加我的QQ好了。QQ:6590420
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shitiu
2009-03-21 · TA获得超过1664个赞
知道小有建树答主
回答量:1237
采纳率:0%
帮助的人:185万
展开全部
ffffffffffffffffffffffffffffffff
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式