U盘改Ukey的算法

  • U盘改Ukey的算法尝试
    • 思路
    • 解决方案
    • 优缺点分析
    • 加密程序
    • 如何使用

U盘改Ukey的算法尝试

半年前曾经做了一个项目,客户想把软件绑定到UKey上面用,但是在网上找了找,Ukey挺贵的,还得对接口,客户突发奇想,看着Ukey和U盘长得差不都,问我U盘能不能改成Ukey?经过尝试,的却做出来了,并且把加密工具分享了出来。一直以为没人用,前几天有人下载了,但是没联系我,估计觉得不能用,这里把原理和使用方法也分享出来。

思路

其实我也没对接过Ukey,U盘改Ukey我之前也考虑过,比较简单的办法就是,放一串密钥到U盘里。这个密钥相当于之前软件的序列号。但是这个方法不太好:
1、把密钥放到U盘里面,密钥被拷贝到别的U盘里,序列号就泄密了。咱们使用UKey加密的主要原因就是不想做联网验证功能了。序列号不能做到一key一密起不到防拷贝防盗版的作用。
2、U盘里的文件一旦误删除了,就失效了。

解决方案

基于上面的两点问题,研究了一下U盘的读写构造。其实如果有一块只读区域,而这个区域只能由我们来写,这个问题就好办了。
1、不知道大家有没有买过假的缩水盘,就是插到电脑上显示的是512G,实际上存16G或者32G文件就会发生丢失,原因就是真实硬件存储很少,在U盘量产的时候做了假的只读取,让操作系统认为是一块很大的盘。那么咱们能不能反过来,假如U盘16G,我们给它做成15G留下1G用来存放咱们的只读序列?这个问题我研究了一半,这样的盘能做出来,但是我不知道怎么通过软件来读写这1G的存储区域。那么这个方案就破产了。
2、研究了一下U盘的其他区域,发现NTFS文件格式下,有一个卷标头,这个里面存放了卷信息,其中有一个信息是卷序列号,而U盘在量产的时候有一个出场的硬序列号。那么如果把应序列号做为信息,自己设定密钥,做摘要算法,再将生成的密文写入NTFS的卷序列号中。是否可以达到加密验密的目的呢?最后按照这个思路写了程序,经过尝试这个方案是可行的。

优缺点分析

我们采用了方案2,这个方案也有它的优缺点:
优点1:便宜,那种招标U盘淘宝上都是按盒卖的非常便宜。
优点2:做Ukey的情况下,不影响U盘存储文件使用,很方便有经济价值。
缺点1:U盘如果进行格式化,序列号会被重置成随机序列号,失效需要重新加密。
缺点2:不如真正的Ukey更保险,因为这种U盘可以通过量产进行拷贝,不过这种操作技术难度较高,如果是小规模、小成本的软件不需要考虑,总体说比序列号要安全的多。

加密程序

https://download.csdn.net/download/zhigongjz/12920011

如何使用

加好密的U盘,我们就可以在程序中验证,从而控制只有加密U盘才可使用我们的软件。使用方法如下:
1、软件打开时运行锁定程序。锁定程序定时查询每个盘符硬序列号Win32_LogicalDiskToPartition和逻辑序列号Win32_LogicalDisk。
2、对硬盘序列号加上你自己设定的加密密钥进行MD5加密,然后那摘要得后几位和逻辑序列号即卷序列号进行对比,如果一致则进入程序,如果不一致,则继续定时检查,等待插入“UKEY”。

如何将U盘改成“U-KEY”使用相关推荐

  1. 日常无用功之windows把整个D盘改成了桌面还原

    windows把整个D盘改成了桌面还原 在日常生活中我们经常将文件放到桌面,但是日积月累下来,桌面占用内存越来越大,这时候我们就想将桌面给放到D盘从而释放C盘空间,但是修改的时候忘记在D盘建立一个文件 ...

  2. 怎样把d盘改成c盘!如何把收藏夹和桌面的路径设成D盘

    抓虾电脑维护常识网以后收藏的东西会自动到里面(一)打开注册表 点"开始"按钮 –"运行"–输入 regedit (二)收藏夹路径的设置 默认情况下,收藏夹对应文 ...

  3. linux ntfs 速度慢,将U盘磁盘格式改成NTFS解决u盘复制速度慢问题

    1.我们首先要看看U盘的文件系统是哪个?打开计算机-可移动磁盘-右击属性. 2.目前打多数U盘采用的都是FAT32格式,这也是大多数USB2.0船速速度比较慢的原因.我们先用文件大小测试一个它的读写速 ...

  4. 家用电脑改成无盘服务器,怎么把自己家电脑硬盘弄成无盘

    1. 如何把有盘的电脑改成无盘的 网吧是用的无盘的?是什么无盘软件? 锐起得应该这样设置 1: 如果集成网卡支持无盘,在BIOS设置里打开网卡得无盘.并关闭其他启动方式 2:连接到服务器后需要在锐起无 ...

  5. 将U盘的图标改成自己喜欢的图案

    如何将U盘的图标改成自己喜欢的图案 我们要找的是ico格式的图片,直接网上搜索ico格式的图片即可,然后找到你心仪的一个下载下来,放到U盘里,直接放在U盘的根目录就可以了,不要放在U盘的文件夹里 也可 ...

  6. 怎样把电脑默认安装C盘的位置改成D盘?

    怎样把电脑C盘设置成禁止安装任何软件? WIN+R键打开运行窗口,在输入框输入regedit打开注册表: 然后复制路径计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft ...

  7. 如何把C盘下用户的中文用户名改成英文用户名

    一:简单介绍 1:很多程序或者服务如下图中路径里出现了汉字,总是会遇到各种莫名其妙的报错. (修改后的效果就是如下图,这是我已经改好的英文名字) 2:我的系统是Windows 10 家庭版. 3:理解 ...

  8. taishan服务器修改为u盘启动,bios改成u盘启动

    怎么在BIOS界面设置U盘启动呢?这个对于很多想要U盘重装系统的朋友来说非常头疼的事情,相对小白用户来说,BIOS界面的专业性比较强,而且是英文状态,很多朋友直接懵了,那么如何设置U盘启动呢?下面小编 ...

  9. 计算机如何设置u盘图标,如何将U盘的图标改成自己喜欢的图案,程序员:这段代码拿去试试...

    如今电脑已经成为了人们生活和工作中不可或缺的一个角色了,基本上家家户户都会配上一台电脑了,电脑的存在帮助我们提高了很大的工作效率,当工作中或者学习中需要传输一些文件的时候,有很多工具可以使用,而一般比 ...

最新文章

  1. netstat -ano
  2. 2018-2019-1 20165318 20165322 20165326 实验一 开发环境的熟悉
  3. [转载]Windowsnbsp;Servernbsp;2008nbsp;R2nbsp;之二十五ADnbsp;RMS信任策略
  4. 安装Windows10 64位提示“只能安装到GPT分区”,怎么办?
  5. C++--第1课 - C到C++的升级
  6. 智联+影音,AITO问界M7想干翻的不止理想One
  7. 数字电视输出标准规范和BT601/BT709/BT2020色域转换方法资料整理
  8. Android App 免杀教程
  9. Ubuntu系统死机解决办法
  10. echarts立体柱状图
  11. Desktop no head
  12. 李开复写给中国大学生的七封信(2/7)
  13. 华为系统wifi服务器失败是怎么回事儿,wifi 用云服务器异常
  14. 【JPress】Template
  15. 一个基于场景感应的android智能手机防丢失系
  16. ‘home‘ has a default child route. When navigating to this named route (:to=“{name: ‘home‘“), the def
  17. 虚幻4游戏开发_4_导入fbx和编辑
  18. 建立oracle数据库链接,Oracle数据库创建数据库连接(DBLink)详细讲解
  19. Java、JSP网上教务评教管理系统(教学评价系统)
  20. 手机壳鸿蒙,首批iPhone X今日到货 四款靠谱手机壳推荐

热门文章

  1. 2021,移动办公再次风起
  2. Accelstepper 库中的参数计算公式
  3. Arduino Software (IDE) 开发环境配置
  4. CorelDRAW VBA - 遍历文档、页面、图层和形状对象
  5. Linux智能家居m0代码,看过来!智能家居4大模块详解
  6. 公司开始裁员了,33岁的我何去何从
  7. Spring Cloud 统一配置
  8. Could not connect to Redis at 127.0.0.1:6379:由于目标计算机积极拒绝,无法连接。
  9. Dependence Inversion Principle 依赖倒置原则
  10. 【MATLAB实验】数学实验实验求根问题三种方法、积分画图及古典密码设计(二分法、牛顿法、不动点迭代法)