CN111031535A - 一种用于智能卡系统的安全通信方法及系统 - Google Patents

一种用于智能卡系统的安全通信方法及系统 Download PDF

Info

Publication number
CN111031535A
CN111031535A CN201911118327.8A CN201911118327A CN111031535A CN 111031535 A CN111031535 A CN 111031535A CN 201911118327 A CN201911118327 A CN 201911118327A CN 111031535 A CN111031535 A CN 111031535A
Authority
CN
China
Prior art keywords
control command
card reader
digital signature
check code
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911118327.8A
Other languages
English (en)
Inventor
邹志革
李慕霄
邹雪城
焦新杭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201911118327.8A priority Critical patent/CN111031535A/zh
Publication of CN111031535A publication Critical patent/CN111031535A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • G06K17/0022Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • H04W12/47Security arrangements using identity modules using near field communication [NFC] or radio frequency identification [RFID] modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种用于智能卡系统的安全通信方法及系统,首先在上位机上对生成的控制命令进行非对称加密,得到数字签名,然后将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,并基于约定的密钥进行加密,生成加密报文,传输到读卡器上;然后在读卡器上对所得加密报文进行解密,并对解密后的报文进行验证,验证成功才能执行上位机发送的控制命令。通过在原始控制命令中加入数字签名和校验码信息,并进行加密,为读卡器验证所接收报文的正确性提供的基准,从而建立了上位机和读卡器通信双方的身份验证,保证了双方通信的真实性、完整性、保密性和安全性。

Description

一种用于智能卡系统的安全通信方法及系统
技术领域
本发明属于通信设备控制领域,更具体地,涉及一种用于智能卡系统的安全通信方法及系统。
背景技术
目前,智能卡系统用于日常生活、工业生产的各个领域,例如城市公交卡系统、校园卡系统、银行卡交易系统,它们大多以卡片式智能卡为实体终端,如公交卡、校园卡、银行卡、门禁卡等等,有的也以手机NFC为实体终端,如小米支付、Apple Pay、HUAWEI Pay等移动支付手段,其共有的特点是这些智能卡或类智能卡系统以“上位机-读卡器-智能卡”三者间的通信为模型进行技术构建,例如银行卡柜台操作时,上位机指的是柜台人员操作的计算机,读卡器指的是连接计算机的银行卡专用读卡器,智能卡指的是银行卡。城市公交卡系统中上位机指的是刷卡机内的微系统,读卡器指的是刷卡机的刷卡端,智能卡指的是公交卡,当公交卡贴近读卡器时,读卡器采集公交卡信息传给其中的微系统,微系统处理后发出减值操作命令控制报文给读卡器,读卡器操作公交卡减值,从而完成一个完整的读卡、写卡流程。
该种“上位机-读卡器-智能卡”模型的优点在于,读卡器与智能卡间采用ISO14443协议进行非接触式通信,上位机与读卡器间的通信比较灵活,易于定制。其缺点在于,上位机与读卡器间的通信采用的硬件通信协议通常有RS232串口通信协议、USB-HID通信协议,而这两种协议中的数据为明文传输,容易遭受中间人攻击,如果上位机发给读卡器的控制报文不经密码学处理,则有可能使不受信任的第三方获取控制报文,从而将智能卡内保存的一些信息泄漏。
综上所述,提供一种用于智能卡系统的安全通信方法及系统是亟待解决的问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种用于智能卡系统的安全通信方法及系统,其目的在于解决由于现有的智能卡系统中上位机与读卡器间通过明文传输数据而导致的无法保证通信数据安全的问题。
为实现上述目的,第一方面,本发明提供了一种用于智能卡系统的安全通信方法,包括以下步骤:
S1、采用非对称加密算法生成一对公钥和私钥,将私钥内置在上位机上,将公钥公开给读卡器,同时约定一串字符作为密钥,分别内置在上位机和读卡器中;
S2、在上位机上生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
S3、在读卡器上基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则读卡器根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,读卡器不对智能卡进行任何操作。从而保证了传输过程中数据的完整性、真实性和保密性。
进一步优选地,步骤S2所述的方法,包括以下步骤:
S21、在上位机上生成控制读卡器操作智能卡的控制命令;
S22、使用私钥对上述控制命令进行非对称加密,得到数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将所得数字签名添加在该控制命令的头部,得到“数字签名+控制命令”组合数据;该数字签名用于保障该上位机的真实性;
S23、计算所得组合数据的校验码,并按照与读卡器约定好的发送报文各部分的顺序,将所得校验码添加在该组合数据的尾部,得到“数字签名+控制命令+校验码”组合数据;该校验码用于保障传输报文的完整性;
S24、基于约定的密钥对所得“数字签名+控制命令+校验码”组合数据进行对称加密,得到加密报文,传输到读卡器上。该加密过程用于保障传输报文的保密性;
进一步优选地,步骤S3所述的方法,包括以下步骤:
S31、基于约定的密钥对接收到的加密报文进行解密,得到解密后的报文;
S32、按照与上位机约定好的发送报文各部分的顺序,将所得解密后的报文依次拆分为数字签名、控制命令和校验码三部分;
S33、计算所得“数字签名+控制命令”组合数据的校验码;
S34、判断计算所得的校验码与拆分所得的校验码是否一致,若不一致,则结束本次传输,读卡器不对智能卡进行任何操作,否则转至步骤S35;对校验码进行校验保证了传输报文的完整性;
S35、基于公钥解密拆分所得的数字签名,得到解密后的控制命令明文;
S36、判断所得解密后的控制命令明文与拆分所得的控制命令是否一致,若不一致,则结束本次传输,读卡器对智能卡不进行任何操作,否则,读卡器根据拆分所得的控制命令对智能卡进行相应操作。对控制命令进行校验保证了上位机的真实性。
进一步优选地,读卡器中对接收到的加密报文进行解密的方法与上位机所采用的对称加密方法相同,读卡器中对拆分所得的数字签名进行解密的方法与上位机所采用的非对称加密方法相同,读卡器中计算所得“数字签名+控制命令”组合数据的校验码的方法与上位机计算“数字签名+控制命令”组合数据校验码的方法相同。
进一步优选地,读卡器在校验校验码和数字签名时,若发现校验失败,可以发送指令给上位机要求上位机重新发送控制命令。
进一步优选地,上述约定的密钥为一串由字母、数字、符号组成的字符,字母区分大小写,符号在前128位ASCII码中选取。
进一步优选地,在通信条件允许的情况下,上述约定的密钥可以采用一次一密的机制,保证每一次传输过程中,所约定的密钥都不相同,从而大大降低攻击者从一定量数据样本中获取密钥信息和加密方式的机会。
第二方面,本发明提供了一种用于智能卡系统的安全通信系统,包括上位机和读卡器,其中,上位机与读卡器处于同一网络下;
上位机用于生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
读卡器用于基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,不对智能卡进行任何操作。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明提供了一种用于智能卡系统的安全通信方法,首先在上位机上对生成的控制命令进行非对称加密,得到数字签名,然后将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;然后在读卡器上对所得加密报文进行解密,并对解密后的报文进行验证,验证成功才能执行上位机发送的控制命令。通过在原始控制命令中加入数字签名和校验码信息,并进行加密,为读卡器验证所接收报文的正确性提供的基准,从而建立了上位机和读卡器通信双方的身份验证,保证了双方通信的安全性。
2、本发明所提供的一种用于智能卡系统的安全通信方法,在上位机上采用非对称算法对控制命令进行加密得到数字签名,在读卡器上,将数字签名进行解密,并将解密后的控制命令明文与解密后报文中的控制命令,进行校验,校验一致才认为发来报文的上位机为可信任上位机,保证了接收到的加密报文的来源是可靠的,进而保证了上位机的真实性可信性和保密性,为安全通信提供了保障。
3、本发明所提供的一种用于智能卡系统的安全通信方法,在上位机上在发送的加密报文中放置了校验码数据,在读卡器上,通过对接收的加密报文进行解密,得到数字签名、控制命令和该校验码数据,并根据所得数字签名和控制命令重新计算校验码,基于计算所得的校验码对解密后报文中的校验码数据进行校验,从而判断传输过程中报文的完整性,为安全通信提供了保障。
4、本发明所提供的用于智能卡系统的安全通信方法及系统,可用于现代的一切基于智能卡的身份认证、充值、消费系统。在遭受密钥暴力穷举攻击时,几乎不可能在可接受的时间内得到解密密钥,在遭受中间人攻击时,几乎不会因为传输报文泄漏而导致真实数据泄漏,有效弥补了上位机控制读卡器时容易被实施中间人攻击的缺陷。
附图说明
图1是本发明所提供的一种用于智能卡系统的安全通信方法流程图;
图2是本发明所提供的上位机上对生成的控制命令进行加密的方法流程图;
图3是本发明所提供的读卡器上对接收到的加密报文进行解密的方法流程图;
图4是本发明所提供的一种用于智能卡系统的安全通信系统示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
为实现上述目的,第一方面,本发明提供了一种用于智能卡系统的安全通信方法,其流程图如图1所示,包括以下步骤:
S1、采用非对称加密算法生成一对公钥和私钥,将私钥内置在上位机上,将公钥公开给读卡器,同时约定一串字符作为密钥,分别内置在上位机和读卡器中;
具体的,非对称加密算法可以为RSA算法、ECC算法等非对称加密算法,具体的,上述约定的密钥为一串由字母、数字、符号组成的字符,字母区分大小写,符号在前128位ASCII码中选取。密钥分别置于可信任的上位机和读卡器上,只有这两方知道,不泄露给第三方。进一步的,当计算能力充足时,可以采用更长的密钥进行加、解密,从而增加攻击者通过暴力穷举获得密钥的成本。在通信条件允许的情况下,上述约定的密钥可以采用一次一密的机制,保证每一次传输过程中,所约定的密钥都不相同,从而大大降低攻击者从一定量数据样本中获取密钥信息和加密方式的机会。
S2、在上位机上生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
具体的,如图2所示,包括以下步骤:
S21、在上位机上生成控制读卡器操作智能卡的控制命令;
具体的,读卡器需要接收上位机的指令才能够对读卡器的无线射频区域内的智能卡进行操作,在上位机上生成控制读卡器操作智能卡的控制命令一般为一串16进制数,如800E000000(卡片擦除)、0084000008(获取随机数)等。
S22、基于私钥对上述控制命令进行非对称加密,得到数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将所得数字签名添加在该控制命令的头部,得到“数字签名+控制命令”组合数据;该数字签名通过非对称加密得到,可以保障该上位机的真实性。
具体的,可以采用RSA算法、ECC算法等非对称加密算法基于私钥对上述控制命令进行非对称加密。
S23、计算所得组合数据的校验码,并按照与读卡器约定好的发送报文各部分的顺序,将所得校验码添加在该组合数据的尾部,得到“数字签名+控制命令+校验码”组合数据;该校验码为读卡器校验接收到的报文的完整性提供了比对基础,可以保障传输报文的完整性;
具体的,计算所得组合数据的校验码的算法可以为CRC、Checksum、奇偶校验等校验算法以及MD4、MD5、SHA-1、SHA-2等哈希算法,当采用哈希算法时,哈希算法强大的防碰撞攻击能力能给数据带来更高的完整性的保障。
S24、基于约定的密钥对所得“数字签名+控制命令+校验码”组合数据进行对称加密,得到加密报文,传输到读卡器上。
具体的,可以采用AES128、DES、3DES、AES、Blowfish、IDEA、RC5、RC6等对称加密算法基于约定的密钥对所得“数字签名+控制命令+校验码”组合数据进行加密。对“数字签名+控制命令+校验码”组合数据进行加密后再传输,使得在遭受密钥暴力穷举攻击时,几乎不可能在可接受的时间内得到解密密钥和在遭受中间人攻击时,也几乎不会因为传输报文的泄漏而导致真实数据泄漏,更具有保密性。
具体的,上位机可以通过UART、I2C、USB、SPI等通信方式将得到加密报文传输到读卡器上。
S3、在读卡器上基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则读卡器根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,读卡器不对智能卡进行任何操作。
具体的,如图3所示,包括以下步骤:
S31、基于约定的密钥对接收到的加密报文进行解密,得到解密后的报文;
具体的,采用与上位机相同的对称加密算法基于约定的密钥对接收到的加密报文进行解密。
S32、按照与上位机约定好的发送报文各部分的顺序,将所得解密后的报文依次拆分为数字签名、控制命令和校验码三部分;
S33、计算所得“数字签名+控制命令”组合数据的校验码;
具体的,采用与上位机相同的校验码计算方法计算所得“数字签名+控制命令”组合数据的校验码。
S34、判断计算所得的校验码与拆分所得的校验码是否一致,若不一致,则结束本次传输,读卡器不对智能卡进行任何操作,否则转至步骤S35;校验码的校验过程保证了传输报文的完整性;
S35、采用公钥解密拆分所得的数字签名,得到解密后的控制命令明文;
具体的,采用与上位机所使用的非对称算法相同的算法解密拆分所得的数字签名。
S36、判断所得解密后的控制命令明文与拆分所得的控制命令是否一致,若不一致,则结束本次传输,读卡器对智能卡不进行任何操作,否则,读卡器根据拆分所得的控制命令对智能卡进行相应操作。所得控制命令的校验过程保证了上位机的真实性。进一步的,读卡器在校验校验码和数字签名时,若发现校验失败,可以发送指令给上位机要求上位机重新发送控制命令。
为了进一步对本发明所提供的用于智能卡系统的安全通信方法,下面结合实施例进行详述:
实施例、
在本实施例中,采用RSA非对称加密算法和AES128对称加密算法进行加解密,采用CRC校验算法计算校验码。具体的,本发明所提供的用于智能卡系统的安全通信方法,包括以下步骤:
S1、采用RSA非对称加密算法生成一对公钥P1和私钥P2,将私钥P2内置在上位机上,将公钥P1公开给读卡器,同时约定一串字符作为密钥K,分别内置在上位机和读卡器中;
具体的,本实施例中使用开源的openssl工具包生成可用于RSA非对称加密算法的加密长度为1024位的私钥P2,然后根据该私钥生成对应的公钥P1。公钥/私钥对生成之后,将私钥P2内置在上位机上,将公钥P1公开给所有读卡器。同时,约定一串字符作为密钥K,密钥K为一串由字母、数字、符号组成的字符,字母区分大小写,符号在前128位ASCII码中选取,例如Q%YiKnS@O$#oN2Ie。本实施例中密钥K为16位字符。
S2、在上位机上生成控制读卡器操作智能卡的控制命令,基于私钥P2生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后采用约定的密钥K进行加密,生成加密报文,传输到读卡器上;
具体的,如图2所示,包括以下步骤:
S21、在上位机上生成控制读卡器操作智能卡的控制命令A;
S22、基于私钥P2采用RSA非对称加密算法对上述控制命令进行加密,得到数字签名B,从而将长度可变的控制命令报文映射为固定长度的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将所得数字签名B添加在该控制命令A的头部,得到“数字签名B+控制命令A”组合数据;
S23、采用CRC校验算法计算所得组合数据的校验码C,并按照与读卡器约定好的发送报文各部分的顺序,将所得校验码添加在该组合数据的尾部,得到“数字签名B+控制命令A+校验码C”组合数据;
S24、采用AES128对称加密算法基于约定的密钥K对所得“数字签名B+控制命令A+校验码C”组合数据进行加密,得到加密报文D,并通过UART通信方式将所得加密报文D传输到读卡器上。
S3、在读卡器上采用约定的密钥对接收到的加密报文D进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名B、控制命令A和校验码C数据依次拆分出来分别进行校验,若校验成功,则读卡器根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,读卡器不对智能卡进行任何操作。
具体的,包括以下步骤:
S31、采用AES128对称加密算法基于约定的密钥K对接收到的加密报文D进行解密,得到解密后的报文;
S32、按照与上位机约定好的发送报文各部分的顺序,将所得解密后的报文依次拆分为数字签名、控制命令和校验码三部分;
具体的,由于CRC算法生成的校验码长度是固定为n位的,n的取值具体由CRC算法来决定,故按照与上位机约定好的发送报文各部分的顺序,取所得解密后的报文的后n位作为拆分出来的校验码E3。另外,由于RSA非对称加密算法进行一次加密后的密文长度和密钥的位长相同,在本实施例中均为1024,因此取所得解密后的报文的前1024位作为拆分出来的数字签名E1,剩余的中间部分即为拆分出来的控制命令E2。
S33、采用与上位机所使用的同样的CRC校验算法计算所得“数字签名E1+控制命令E2”组合数据的校验码F;
S34、判断计算所得的校验码F与拆分所得的校验码E3是否一致,若不一致,则认为接收到的加密报文不完整或是错误的,将接收到的加密报文D丢弃,结束本次传输,读卡器不对智能卡进行任何操作,否则转至步骤S35;
S35、采用RSA非对称加密算法基于公钥P1解密拆分所得的数字签名E1,得到解密后的控制命令明文G;
S36、判断所得解密后的控制命令明文G与拆分所得的控制命令E2是否一致,若不一致,则认为发来报文的上位机为非法上位机,将接收到的加密报文D丢弃,结束本次传输,读卡器不对智能卡进行任何操作;否则,读卡器根据拆分所得的控制命令对智能卡进行相应操作。
第二方面,本发明提供了一种用于智能卡系统的安全通信系统,如图4所示,包括上位机和读卡器,其中,上位机与读卡器处于同一网络下;
上位机用于生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
读卡器用于基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,不对智能卡进行任何操作。
本发明提供了一种用于智能卡系统的安全通信方法及系统,通过在原始控制命令中加入数字签名和校验码信息,并进行加密,从而保证了上位机的真实性、传输报文的完整性以及传输报文过程中的保密性,为读卡器验证所接收报文的正确性提供的基准,从而建立了上位机和读卡器通信双方的身份验证,保证了双方通信的真实性、完整性、保密性和安全性。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种用于智能卡系统的安全通信方法,其特征在于,包括以下步骤:
S1、采用非对称加密算法生成一对公钥和私钥,将私钥内置在上位机上,将公钥公开给读卡器,同时约定一串字符作为密钥,分别内置在上位机和读卡器中;
S2、在上位机上生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
S3、在读卡器上基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则读卡器根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,读卡器不对智能卡进行任何操作。
2.根据权利要求1所述的用于智能卡系统的安全通信方法,其特征在于,步骤S2所述的方法,包括以下步骤:
S21、在上位机上生成控制读卡器操作智能卡的控制命令;
S22、使用私钥对所述控制命令进行非对称加密,得到数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将所得数字签名添加在该控制命令的头部,得到“数字签名+控制命令”组合数据;
S23、计算所得组合数据的校验码,并按照与读卡器约定好的发送报文各部分的顺序,将所得校验码添加在该组合数据的尾部,得到“数字签名+控制命令+校验码”组合数据;
S24、基于约定的密钥对所得“数字签名+控制命令+校验码”组合数据进行对称加密,得到加密报文,传输到读卡器上。
3.根据权利要求1所述的用于智能卡系统的安全通信方法,其特征在于,步骤S3所述的方法,包括以下步骤:
S31、基于约定的密钥对接收到的加密报文进行解密,得到解密后的报文;
S32、按照与上位机约定好的发送报文各部分的顺序,将所得解密后的报文依次拆分为数字签名、控制命令和校验码三部分;
S33、计算所得“数字签名+控制命令”组合数据的校验码;
S34、判断计算所得的校验码与拆分所得的校验码是否一致,若不一致,则结束本次传输,读卡器不对智能卡进行任何操作,否则转至步骤S35;
S35、基于公钥对拆分所得的数字签名进行解密,得到解密后的控制命令明文;
S36、判断所得解密后的控制命令明文与拆分所得的控制命令是否一致,若不一致,则结束本次传输,读卡器对智能卡不进行任何操作,否则,读卡器根据拆分所得的控制命令对智能卡进行相应操作。
4.根据权利要求3所述的用于智能卡系统的安全通信方法,其特征在于,读卡器中对接收到的加密报文进行解密的方法与上位机所采用的对称加密方法相同,读卡器中对拆分所得的数字签名进行解密的方法与上位机所采用的非对称加密方法相同,读卡器中计算所得“数字签名+控制命令”组合数据的校验码的方法与上位机计算“数字签名+控制命令”组合数据校验码的方法相同。
5.根据权利要求3所述的用于智能卡系统的安全通信方法,其特征在于,读卡器在校验校验码和数字签名时,若发现校验失败,可以发送指令给上位机要求上位机重新发送控制命令。
6.根据权利要求1所述的用于智能卡系统的安全通信方法,其特征在于,所述约定的密钥为一串由字母、数字、符号组成的字符,字母区分大小写,符号在前128位ASCII码中选取。
7.根据权利要求6所述的用于智能卡系统的安全通信方法,其特征在于,在通信条件允许的情况下,所述约定的密钥可以采用一次一密的机制,保证每一次传输过程中,所约定的密钥都不相同。
8.一种用于智能卡系统的安全通信系统,其特征在于,包括上位机和读卡器,所述上位机与所述读卡器处于同一网络下;
所述上位机用于生成控制读卡器操作智能卡的控制命令,基于私钥生成该控制命令的数字签名,并按照与读卡器约定好的发送报文各部分的顺序,将数字签名、该控制命令以及计算所得的二者组合的校验码进行组合,然后基于约定的密钥进行加密,生成加密报文,传输到读卡器上;
所述读卡器用于基于约定的密钥对接收到的加密报文进行解密,并按照与上位机约定好的发送报文各部分的顺序,将解密后报文中的数字签名、控制命令和校验码数据依次拆分出来分别进行校验,若校验成功,则根据拆分所得的控制命令对智能卡进行相应操作;否则,结束本次传输,不对智能卡进行任何操作。
CN201911118327.8A 2019-11-15 2019-11-15 一种用于智能卡系统的安全通信方法及系统 Pending CN111031535A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911118327.8A CN111031535A (zh) 2019-11-15 2019-11-15 一种用于智能卡系统的安全通信方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911118327.8A CN111031535A (zh) 2019-11-15 2019-11-15 一种用于智能卡系统的安全通信方法及系统

Publications (1)

Publication Number Publication Date
CN111031535A true CN111031535A (zh) 2020-04-17

Family

ID=70200293

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911118327.8A Pending CN111031535A (zh) 2019-11-15 2019-11-15 一种用于智能卡系统的安全通信方法及系统

Country Status (1)

Country Link
CN (1) CN111031535A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111970238A (zh) * 2020-07-09 2020-11-20 北京航空航天大学 一种可靠的控制临近空间飞艇载荷指令安全传输的方法
CN113541955A (zh) * 2021-06-03 2021-10-22 国电南瑞科技股份有限公司 一种安控系统2m通信的加密方法及装置
CN113824688A (zh) * 2021-08-24 2021-12-21 广州市瑞立德信息系统有限公司 加密通信方法、网络控制器以及门禁控制系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499142A (zh) * 2008-12-29 2009-08-05 北京握奇数据系统有限公司 一种双界面智能卡及其对应用指令进行处理的方法
CN102307100A (zh) * 2011-09-08 2012-01-04 飞天诚信科技股份有限公司 一种数据处理装置及其数据处理方法
CN102315940A (zh) * 2011-09-08 2012-01-11 飞天诚信科技股份有限公司 一种数据的传输与处理系统及方法
CN102761557A (zh) * 2012-07-31 2012-10-31 飞天诚信科技股份有限公司 一种终端设备认证方法及装置
US20150134536A1 (en) * 2012-06-08 2015-05-14 Zte Corporation Mobile terminal and method and system for inquiring information of intelligent card
CN106845300A (zh) * 2016-12-02 2017-06-13 北京握奇智能科技有限公司 一种安全读卡器和安全读卡方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499142A (zh) * 2008-12-29 2009-08-05 北京握奇数据系统有限公司 一种双界面智能卡及其对应用指令进行处理的方法
CN102307100A (zh) * 2011-09-08 2012-01-04 飞天诚信科技股份有限公司 一种数据处理装置及其数据处理方法
CN102315940A (zh) * 2011-09-08 2012-01-11 飞天诚信科技股份有限公司 一种数据的传输与处理系统及方法
US20150134536A1 (en) * 2012-06-08 2015-05-14 Zte Corporation Mobile terminal and method and system for inquiring information of intelligent card
CN102761557A (zh) * 2012-07-31 2012-10-31 飞天诚信科技股份有限公司 一种终端设备认证方法及装置
CN106845300A (zh) * 2016-12-02 2017-06-13 北京握奇智能科技有限公司 一种安全读卡器和安全读卡方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111970238A (zh) * 2020-07-09 2020-11-20 北京航空航天大学 一种可靠的控制临近空间飞艇载荷指令安全传输的方法
CN113541955A (zh) * 2021-06-03 2021-10-22 国电南瑞科技股份有限公司 一种安控系统2m通信的加密方法及装置
CN113824688A (zh) * 2021-08-24 2021-12-21 广州市瑞立德信息系统有限公司 加密通信方法、网络控制器以及门禁控制系统

Similar Documents

Publication Publication Date Title
US9253162B2 (en) Intelligent card secure communication method
CN108566381A (zh) 一种安全升级方法、装置、服务器、设备和介质
WO2018127081A1 (zh) 一种加密密钥获取方法及系统
WO2018120883A1 (zh) 低功耗蓝牙设备通讯加密方法及系统
US20110113241A1 (en) Ic card, ic card system, and method thereof
CN111614621B (zh) 物联网通信方法和系统
WO2015161689A1 (zh) 一种基于协商密钥的数据处理方法
CN110381055B (zh) 医疗供应链中的rfid系统隐私保护认证协议方法
WO2016058404A1 (zh) 基于预共享密钥的实体鉴别方法及装置
CN101399666A (zh) 文件数字证书安全控制方法及系统
CN101247605A (zh) 短信息加密、签名方法、移动终端及短信息加密系统
CN111031535A (zh) 一种用于智能卡系统的安全通信方法及系统
CN104424446A (zh) 一种安全认证和传输的方法和系统
AU2011327986B2 (en) Protection against passive sniffing
CN109284618B (zh) 数据源数据的验证方法及系统
WO2015135398A1 (zh) 一种基于协商密钥的数据处理方法
US20200351100A1 (en) Cryptographic method for verifying data
EP3128696B1 (en) Entity authentication method and device
CN113811874A (zh) 加密数据验证方法
CN105281910A (zh) 带ca数字证书作为入网身份识别的物联网锁及其入网身份识别方法
CN102970676A (zh) 一种对原始数据进行处理的方法、物联网系统及终端
WO2015158173A1 (zh) 一种基于协商密钥的数据处理方法
US10200348B2 (en) Method to detect an OTA (over the air) standard message affected by an error
US8953804B2 (en) Method for establishing a secure communication channel
WO2021083349A1 (zh) 一种基于安全芯片的安全认证方法与系统、安全芯片及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200417

RJ01 Rejection of invention patent application after publication