技术领域
[0001] 本发明是关于一种加密方法和加密系统,特别是一种可以提升信息安全的加密方法和加密系统。
相关背景技术
[0002] 近年来科技进步,常会在物品上安装具有信息记录功能的晶片,以记录与该物品相关的数据(例如物品出场信息、运输信息、使用者信息)。另外,为了怕该些信息外泄,厂商也会运用单一加密演算法,对晶片储存的数据加入单一密码以进行加密。
[0003] 然而,一般的运用单一加密演算法,以加入单一密码的加密方式过于简易单调,而容易被骇客破解单一密码,如此仍会造成信息安全的问题。因此,有必要提供新的加密方法,以提升信息安全。
具体实施方式
[0027] 为能更了解本发明的技术内容,特举较佳具体实施例说明如下。
[0028] 以下请一并参考图1至图3关于本发明的第一实施例的加密系统和加密方法。图1是本发明的第一实施例的加密系统和外部计算机的系统架构图;图2是本发明的第一实施例的物品和加密系统的示意图;图3是本发明的第一实施例的加密方法的步骤示意图。
[0029] 在本发明的第一实施例中,如图1和图2所示,加密系统1安装在一物品100上。加密系统1可以储存和物品100及加密系统1相关的数据,例如储存物品100在制作、物流、使用过程中的各种记录,且加密系统1可以对数据以多种加密演算法进行多重加密,以提升信息安全;且加密系统1和外部计算机900、900a、900b信号连接以互相传递数据。物品100例如为一药瓶,其可容纳医药品。外部计算机900、900a、900b例如为桌上型计算机、笔记型计算机、平板计算机、智能手机或是其他具有网络功能的设备。
[0030] 加密系统1包括一传输模块10、一加密模块20、一解密模块30和一记忆体40。传输模块10是一网络卡,用以和外部计算机900、900a、900b信号连接以和该些设备互相传输数据。加密模块20是具有加密功能的晶片或软件,用以使用一对称性加密演算法(Symmetric cryptography)、一非对称加密演算法(Asymmetric cryptography)和一杂凑演算法中的至少一者,对数据进行加密。对称性加密演算法的种类包括AES、ChaCha20、DES、3DES、Satsa20、Blowfish、IDEA、RC5、RC6、Camellia;非对称加密演算法的种类包括RSA、ElGamal、Rabin、DSA、ECDSA;杂凑演算法的种类包括MD2、MD4、MD5、SHA‑0、SHA‑1、SHA‑2、SHA‑3、BLAKE、BLAKE2、BLAKE3;然而,对称性加密演算法、非对称加密演算法和杂凑演算法的种类不以上述为限,其亦可根据使用者需求而改变;须注意的是,上述的对称性加密演算法、非对称加密演算法和杂凑演算法的种类皆已被广泛运用在数据加密的领域,且演算法的种类并非本案重点,故不需对此多做赘述。另外,每一次加密所使用的演算法不限于一种,例如加密模块20若要加密一串长度为50个字的数据,则加密模块20可以针对半部数据(前25个字)使用AES演算法加密,后半部数据(后25个字)使用RSA加密。
[0031] 解密模块30是具有解密功能的晶片或软件,用以解密被加密模块20加密的数据。记忆体40信号连接传输模块10、加密模块20和解密模块30。记忆体40用以储存执行加密方法所需的数据和软件。加密方法被编程为软件并储存在记忆体40。记忆体40已存有n笔数据,其中n为整数且n≧0。
[0032] 在本发明的第一实施例中,如图1至图3所示,制造厂商在制作物品100时,会将加密系统1安装在物品100的瓶身上,并且制造厂商会使用外部计算机900将物品100的出厂数据传输给加密系统1,加密系统1的加密模块20会加密出厂数据,且记忆体40会储存出厂数据,也就是说,加密后的出厂数据即为n笔数据,且n定义为1,为了方便阅读,后续会将n笔数据的出厂数据描述为第一数据。出厂数据例如为物品100所容纳的药品名称、药品成分、制造日期、使用期限、仿单和制造厂商的相关数据。但是第一数据的内容不以上述为限,其可依照实际需求而改变。在本实施例中,加密模块20加密出厂数据,所采用的演算法是对称性加密演算法的RC6,其解密密钥是英数形式的密码“ABCDE12345”;因此后续若要对出厂数据解密,则解密密钥需指定一样的演算法和密码。
[0033] 接着,制造厂商可以将物品100交给物流厂商,物流厂商会使用外部计算机900a将物品100的物流数据和一加密要求传输给加密系统1;此时,加密系统1会执行加密方法的步骤101:通过传输模块,接收一加密要求和一第n+1笔数据。
[0034] 传输模块10会接收外部计算机900a传来的物品100的加密要求和物流数据;在本发明中,物流数据即为第n+1笔数据,且n为1,为了方便阅读,后续会将n+1笔数据的物流数据描述为第二数据。另外,传输模块10的网络卡会侦测外部计算机900a的IP,并将IP记录在记忆体40里。
[0035] 接着,加密系统1会执行加密方法的步骤102:通过记忆体,储存第n+1笔数据。
[0036] 传输模块10会将接收到的第二数据传送给记忆体40。记忆体40会储存第二数据。第二数据的内容为物品100的物流数据,例如物品100的运输日期、运输路线、运输方式、负责运输的工作人员的数据。
[0037] 接着,加密系统1会执行加密方法的步骤103:通过加密模块,根据加密要求,对n笔数据与第n+1笔数据进行一加密处理,以形成一加密数据。
[0038] 传输模块10会将接收到的加密要求传送给加密模块20。加密模块20会根据加密要求,对记忆体40里储存的第一数据和第二数据进行一加密处理,以形成一加密数据。在本发明中,加密要求可以从对称性加密演算法、非对称加密演算法和杂凑演算法之中,指定欲采用的加密方式;加密模块20会从选定的演算法之中,再随机选择任一种类的特定演算法来进行加密,例如,若是加密要求指定采用的加密方式是对称性加密演算法,则加密模块20会从对称性加密演算法包括的演算法种类里再随机挑选其中一者(例如RC6),以对数据加密。或者,加密要求也可以先从上述三类演算法之中,指定欲采用的加密方式,再从指定的演算法之中指定特定的演算法种类。或者,加密要求也可以不指定欲采用的加密方式和特定的演算法种类,让加密模块20随机选择加密方式和演算法种类。加密模块20使用的加密方式和特定的演算法种类的数据,会储存在记忆体40里。通过加密模块20随机选择加密的演算法种类的机制,可以让骇客难以确认欲破解的演算法,而提升信息安全。另外,加密要求包括一解密密钥,加密要求及其解密密钥的内容会记录在记忆体40里;解密密钥用以在加密系统1接收到外部传来的解密要求时,让加密系统1判断解密密钥是否对应解密要求,若对应则会进行解密。在本实施例中,加密要求指定用非对称性加密演算法的ECDSA,对第一数据和第二数据进行一加密处理,以形成一加密数据;且加密要求的解密密钥是英数密码形式的“FGHIJ67890”;因此后续若要对加密数据解密,则解密密钥需指定一样的演算法和密码。
[0039] 须注意的是,由于杂凑演算法是由演算法将数据打乱混合,重新建立乱数的数值来对数据加密,被杂凑演算法加密后的数据再后续的步骤无法解密;因此,使用者可以考量数据是否后续不再需要解密,而选择杂凑演算法来加密。
[0040] 通过加密模块20随机选择加密的演算法种类的机制,可以让骇客难以确认欲破解的演算法,而提升信息安全。另外,出厂数据会先被加密模块20加密且储存在记忆体40里,接着出厂数据又在步骤103中,根据加密要求而被加密模块20加密,因此被多重加密的出厂数据的数据安全性会更进一步提升。
[0041] 在加密模块20根据加密要求加密第一数据(即为n笔数据的出厂数据)和第二数据(即为第n+1笔数据的物流数据)之后,若是物流厂商将物品100交给后续的处理的医疗机构,医疗机构会使用外部计算机900b将物品100的医疗数据(例如物品100的交货日期、医疗机构、使用日期、使用药品的患者的数据)和另一加密要求传输给加密系统1;此时,可以沿着图3所示的虚线重复进行步骤101至步骤103,并且将n定义为2,将出厂数据和物流数据的第二数据整体定义为新版本的n笔数据,将医疗数据定义为新版本的n+1笔数据(即为第三数据)。如此一来,经过重复进行的步骤101至步骤103,可以根据外部计算机900b传送的加密要求加密第三数据,并且可以根据加密要求再次加密新版本的第二数据(即为曾经根据加密要求加密过的出厂数据和物流数据);也就是说原本的出厂数据和物流数据皆会受到多重加密,使得数据安全性会更进一步提升。
[0042] 以下请一并参考图4关于本发明的第二实施例的加密系统和加密方法。图4是本发明的第二实施例的加密方法的步骤示意图。
[0043] 如图4所示,第一实施例与第二实施例的差别在于,在第二实施例的加密方法之中,在执行步骤103之后,若是制造厂商想查询加密系统1所记录的加密数据,则制造厂商可使操作外部计算机900传送一解密要求,给加密系统1;此时,加密系统1会执行加密方法的步骤104:通过传输模块,接收一解密要求,其中解密要求包括一解密密钥。
[0044] 传输模块10会接收外部计算机900传来的一解密要求。传输模块10会把解密要求传送给解密模块30。解密要求包括一解密密钥以及需要解密的目标数据。
[0045] 接着,加密系统1会执行加密方法的步骤105:通过解密模块,判断解密要求的解密密钥是否与加密数据的一解密密钥对应。
[0046] 解密模块30收到解密要求后,会读取记忆体40所记录的加密要求及其解密密钥和需要解密的目标数据,并判断解密要求的解密密钥是否对应加密数据的解密密钥。如同先前所述,记忆体40所记录的出厂数据被加密模块20第一次加密时,加密模块20使用的演算法是对称性加密演算法的RC6,其解密密钥是“ABCDE12345”;加密模块20对第一数据和第二数据进行加密处理时,加密模块20指定用非对称性加密演算法的ECDSA,以形成一加密数据,且其解密密钥是“FGHIJ67890”。因此,解密模块30会判断解密要求的解密密钥是否指示相同的演算法类型和相同的解密密钥;另外,解密密钥的态样,不限于上述的英数形式密码,其亦可为数字签章。在本实施例中,解密要求提供以下信息:“解密目标为“出厂数据”,对应出厂数据的演算法是对称性加密演算法的RC6,其解密密钥是“ABCDE12345”;解密目标为“物流数据和出厂数据加密后所形成的加密数据”,对应加密数据的演算法是非对称性加密演算法的ECDSA,其解密密钥是“FGHIJ67890””。
[0047] 若解密要求的解密密钥不对应加密数据的解密密钥,则加密方法会结束。如果解密要求的解密密钥对应加密数据的解密密钥,则加密系统1会执行加密方法的步骤106:通过解密模块,解密加密数据。
[0048] 解密模块30判断解密要求的解密密钥对应加密数据的解密密钥之后,解密模块30会先读取记忆体40里储存的加密数据,让被非对称性加密演算法的ECDSA加密过的加密数据被解密,以取得解密后的第二数据以及仍然被对称性加密演算法的RC6加密的第一数据;接着,解密模块30会再次解密第一数据(即为出厂数据),以取得完全解密后的第一数据;最后,完全解密的加密数据(即为第一数据与第二数据)会被传给传输模块10。
[0049] 最后,加密系统1会执行加密方法的步骤110:通过传输模块,传送解密后的n笔数据与第n+1笔数据给外部计算机。
[0050] 传输模块10会根据记忆体40所记录的外部计算机900的IP,将解密的第一数据与第二数据,回传给外部计算机900,以供操作外部计算机900的工作人员读取完全解密的第一数据与第二数据。
[0051] 通过本发明的加密系统1和加密方法,可以储存物品在制作、物流、使用过程中的各种记录,且加密系统可以根据不同来源的加密钥求而对不同的数据进行多重加密,以进一步提升信息安全。
[0052] 需注意的是,上述仅为实施例,而非限制于实施例。譬如此不脱离本发明基本架构者,皆应为本专利所主张的权利范围,而应以权利要求书为准。