一种数据传输系统及其方法

文档序号:10473714阅读:470来源:国知局
一种数据传输系统及其方法
【专利摘要】本发明提供了一种数据传输系统及其方法,该系统中包括:客户端、预约平台以及认证平台,其中,客户端,用于获取预约信息,预约信息包括用户信息;且客户端对用户信息进行加密生成第一认证码和第二认证码、对预约信息进行加密生成加密预约信息;预约平台,与客户端通信连接,预约平台接收第一认证码并对其进行认证;认证平台,与预约平台通信连接,认证平台经由预约平台接收第二认证码和加密预约信息,并基于第二认证码实现对客户端的身份认证、基于加密预约信息得到预约信息并将其反馈给预约平台,以此完成预约信息在数据传输系统中的传输。其使用与用户唯一关联的运算算法实现预约信息的加密和解密,保障了信息传输过程中的安全性能。
【专利说明】
一种数据传输系统及其方法
技术领域
[0001 ]本发明涉及通信技术领域,尤其涉及一种数据传输系统及其方法。
【背景技术】
[0002]在日常生活中,去银行办理业务、到政府服务窗口办事、到医院看病等都需要本人到了银行营业网点、政府部门、医院等才能获取得到当前正在等候的人数信息并进行排队预约。这种单一的排队预约方式使用户在到达营业网点/政府部门/医院之前,根本无法得知任何排队信息,更不可能在未到达目的地之前进行排队。导致用户无法提前选择合适的时间,也无法根据当前排队情况选择人数较少的地点,只能被动的按照到达营业网点、政府部门或是医院的次序排队和等待。
[0003]无疑,这种排队预约的方式不仅增加了用户排队等待的总时间,而且也造成大量已排队预约的用户,因排队人数众多在等待中途取消排队和因错过排队号码后重复排队的不合理问题,并且,对于可以办理相同业务的不同网点,也存在着业务量不均衡的问题,无疑造成了资源的浪费。
[0004]当然,针对这一现象,部分机构推出了业务预约服务,即用户可以利用移动终端APP进行相关业务的预约。该业务预约服务虽然解决了用户排队的有序性和舒适性,但在现有技术中,在预约信息的传递过程中存在着安全隐患,一旦出现问题就会造成客户个人隐私的泄露和财产的损失。

【发明内容】

[0005]针对上述问题,本发明提供了一种数据传输系统及其方法,其使用与用户唯一关联的运算算法实现预约信息的加密和解密,保障了信息传输过程中的安全性能。
[0006]本发明提供的技术方案如下:
[0007]—种数据传输系统,包括:客户端、预约平台以及认证平台,其中,
[0008]所述客户端,用于获取预约信息,所述预约信息包括用户信息;且所述客户端对所述用户信息进行加密生成第一认证码和第二认证码、对所述预约信息进行加密生成加密预约信息;
[0009]所述预约平台,与所述客户端通信连接,所述预约平台接收所述第一认证码并对其进行认证;
[0010]所述认证平台,与所述预约平台通信连接,所述认证平台经由所述预约平台接收所述第二认证码和加密预约信息,并基于所述第二认证码实现对所述客户端的身份认证、基于所述加密预约信息得到所述预约信息并将其反馈给所述预约平台,以此完成所述预约信息在所述数据传输系统中的传输。
[0011]进一步优选地,所述用户信息包括:用户名、登录密码、用户ID、地址信息以及终端标识码;所述预约信息包括:所述用户信息和业务信息;和/或,
[0012]所述客户端包括第一存储模块,所述第一存储模块中预存一对称加密算法及一与用户唯一关联的运算算法。
[0013]进一步优选地,所述客户端包括第一存储模块,所述客户端还包括一与所述第一存储模块连接的第一运算模块;
[0014]所述第一运算模块基于所述对称加密算法对所述用户信息进行加密得到第一认证码、基于所述运算算法和所述用户信息得到运算密钥以及基于所述对称加密算法和所述运算密钥分别对所述用户信息和所述预约信息进行加密生成第二认证码和加密预约信息。
[0015]进一步优选地,所述预约平台中包括相互连接的第二存储模块和第一认证模块,其中,
[0016]所述第二存储模块中预存所述对称解密算法和用户注册列表;
[0017]所述第一认证模块,与所述第二存储模块连接,所述第一认证模块基于所述对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息,且基于所述用户注册列表判断该用户是否为合法用户。
[0018]进一步优选地,所述认证平台中包括:第三存储模块、第二认证模块以及第二运算模块,其中,
[0019]所述第三存储模块中预存所述对称解密算法和所述运算算法;
[0020]所述第二运算模块,与所述第三存储模块连接,所述第二运算模块基于所述运算算法和所述用户信息得到运算密钥、基于所述对称解密算法和所述运算密钥对所述第二认证码进行解密得到认证用户信息、以及基于所述对称解密算法和所述运算密钥对所述加密预约信息进行解密得到所述预约信息;
[0021]所述第二认证模块,与所述第二运算模块连接,所述第二认证模块基于生成的认证用户信息对接收到的用户信息进行认证。
[0022]进一步优选地,所述第三存储模块中还预存有一本地算法,所述认证平台中还包括:随机数生成模块和算法生成模块,其中,
[0023]所述随机数生成模块,用于生成一随机数;
[0024]所述算法生成模块,分别与所述第三存储模块和所述随机数生成模块连接,所述算法生成模块基于所述随机数对所述本地算法进行重构生成所述运算算法,并将其下发至客户端中存储;
[0025]且在所述认证平台中,所述第二运算模块还与所述随机数生成模块连接,所述第二运算模块基于所述随机数和所述运算算法生成挑战码,并将所述挑战码下发至所述客户端;所述客户端基于所述随机数和运算算法生成认证挑战码,实现对认证平台的认证。
[0026]本发明提供了一种数据传输方法,包括:
[0027]SI客户端获取用户信息,并对所述用户信息进行加密生成第一认证码和第二认证码;所述用户信息包括:用户名、登录密码以及终端标识码;
[0028]S2预约平台接收所述第一认证码,实现对所述第一认证码的认证;
[0029]S3认证平台接收所述第二认证码,并基于所述第二认证码实现对所述客户端的身份认证;
[0030]S4所述客户端获取包含用户信息的预约信息,并对所述预约信息进行加密生成加密预约信息;所述预约信息包括:用户信息、用户ID以及业务信息;
[0031]S5所述认证平台经由所述预约平台接收所述加密预约信息,对其进行解密得到其中包含的所述预约信息;
[0032]S6所述认证平台将得到的预约信息反馈给所述预约平台,以此完成所述预约信息的传输。
[0033]进一步优选地,在步骤SI中具体包括:
[0034]Sll客户端基于内部存储的对称加密算法对所述用户信息进行加密得到第一认证码;
[0035]S12客户端基于所述用户信息和内部存储的运算算法得到运算密钥;
[0036]S13客户端基于所述对称加密算法和所述运算密钥对用户信息进行加密生成第二认证码;
[0037]和/或,在步骤S2中具体包括:
[0038]S21预约平台基于内部存储的对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息;
[0039]S22预约平台基于内置的用户注册列表判断该用户是否为合法用户;
[0040]和/或,在步骤S3中具体包括:
[0041 ] S31认证平台接收所述第一认证码;
[0042]S32认证平台基于用户信息和内部存储的运算算法得到运算密钥;
[0043]S33认证平台基于内部存储的对称解密算法和所述运算密钥对第二认证码进行解密生成认证用户信息;
[0044]S34认证平台基于生成的认证用户信息实现对用户信息的认证。
[0045]进一步优选地,在步骤S4中具体包括:
[0046]S41客户端获取预约信息;
[0047]S42客户端基于所述用户信息和内部存储的运算算法得到运算密钥;
[0048]S43客户端基于内部存储的对称加密算法和所述运算密钥对所述预约信息进行加密生成加密预约信息;
[0049]和/或,在步骤S5中具体包括:
[0050]S51认证平台经由预约平台接收所述加密预约信息;
[0051]S52认证平台基于用户信息和内部存储的运算算法得到运算密钥;
[0052]S53认证平台基于所述对称解密算法和所述运算密钥对所述加密预约信息进行解密得到所述预约信息。
[0053]进一步优选地,在步骤SI之前具体包括:
[0054]SOl客户端获取用户信息,并基于该用户信息生成注册请求发送至预约平台;
[0055]S02预约平台接收到所述注册请求,对其中包括的用户信息进行验证;
[0056]S03若所述用户信息验证成功,所述预约平台将所述用户信息存储在内部的当前用户注册列表中形成新的用户注册列表,并发送算法请求至认证平台;
[0057]S04认证平台接收所述算法生成请求,随即基于用户信息生成一随机数;
[0058]S05认证平台基于所述随机数对其内置的本地算法进行重构生成运算算法并进行存储;
[0059]S06认证平台将所述运算算法下发至客户端;
[0060]和/或,在步骤S3之后还包括:
[0061]认证平台基于生成的随机数和内置的运算算法生成挑战码,并将所述挑战码和随机数一起下发至客户端;
[0062]客户端接收所述挑战码,基于接收到的随机数和内置的运算算法生成认证挑战码;
[0063]客户端基于生成的认证挑战码对接收到的认证码进行认证,以此实现客户端对认证平台的认证。
[0064]本发明提供的数据传输系统及其方法,能够带来以下有益效果:
[0065]在本发明提供的数据传输系统中,用户在第一次登录预约平台时,在对客户端进行认证之后,认证平台会基于生成的随机数和预先设定好的重置规则生成与用户唯一关联的运算算法,并将该运算算法分别存储在客户端和认证平台中。在这个过程中,由于随机数是基于用户信息生成的,具备唯一性,以此保障了生成的运算算法的唯一性。这样每个客户端中预存的运算算法都是唯一的,不容易被破解,即使其中某一个客户端被破译了,也不会影响其他客户端的身份认证和数据传输,大大地提高了数据传输过程中的安全性能。
[0066]再有,在进行数据传输的过程中,预约平台首先会对用户信息进行认证,之后认证平台与客户端之间相互进行身份认证,再进行加密预约信息的传输和解密,以此预约平台得到其中的预约信息。且在进行身份认证和加解密的过程中,使用到的运算密钥基于内部存储的运算算法和用户信息生成的,可以看出,由于运算算法是唯一的,自然生成的运算密钥也是唯一的;且由运算密钥是现场生成的,不是预设的,在数据传输的过程中,并不需要传输该运算密钥,而是分别在客户端和认证平台中生成,同样大大提高了身份认证和数据传输过程中的安全性能。
[0067]最后,本发明提供的数据传输系统和方法适用于任意一个需要进行预约以便节约用户时间的应用场景,如,在银行预约系统中预约需要办理的业务、在医院系统预约看病、在政府部门预约需要办理的业务等,应用上具备普适性,扩展了应用领域。
【附图说明】
[0068]下面将以明确易懂的方式,结合【附图说明】优选实施方式,对上述特性、技术特征、优点及其实现方式予以进一步说明。
[0069]图1为本发明中数据传输系统第一种实施方式结构示意图;
[0070]图2为本发明中数据传输系统第二种实施方式结构示意图;
[0071 ]图3为本发明中数据传输系统第三种实施方式结构示意图;
[0072]图4为本发明中认证平台一种实施方式结构示意图;
[0073]图5为本发明中认证平台另一种实施方式结构示意图;
[0074]图6为本发明中数据传输方法流程示意图;
[0075]图7为本发明中第一次登录预约平台流程示意图。
[0076]附图标号说明:
[0077]100-数据传输系统,110-客户端,120-预约平台,130-认证平台,111第一存储模块,112-第一运算模块,121-第二存储模块,122-第一认证模块,131-第三存储模块,132-第二认证模块,133-第二运算模块,134-随机数生成模块,135-算法生成模块。
【具体实施方式】
[0078]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照【附图说明】本发明的【具体实施方式】。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
[0079]如图1所示为本发明提供的数据传输系统100第一种实施方式结构示意图,从图中可以看出,在该数据传输系统100中包括:客户端110、预约平台120以及认证平台130,其中,预约平台120与客户端110通信连接,认证平台130与预约平台120通信连接。在数据传输过程中,客户端110用于获取包含用户信息的预约信息,且用于基于获取到的用户信息加密生成第一认证码和第二认证码、对获取到的预约信息加密生成加密预约信息。预约平台120用于对接收到的第一认证码进行认证,以此客户端110能够成功登录该预约平台120。认证平台130经由预约平台120接收第二认证码和加密预约信息,并基于第二认证码实现对客户端110的身份认证、基于加密预约信息得到预约信息并将其反馈给预约平台120,以此完成预约信息在数据传输系统100中的传输。
[0080]具体来说,上述用户信息包括:用户名、登录密码、用户ID( Identity,用户身份证号)、地址信息以及终端标识码(即设备指纹,如终端的国际移动设备标识(IMEI,Internat1nal Mobile Equipment Identity))。预约信息包括:用户信息和业务信息。在具体实施例中,若该数据传输系统100应用于银行业务预约,则该业务信息可以包括:大额取现、外汇汇兑、外币取现等相关银行服务信息;具体如包括取现金额等,还可以包括预约时间等信息。
[0081]简单来说,在上述该数据传输过程中,首先,预约平台120要对用户信息进行身份认证,以便用户登录该预约平台120;之后,认证平台130再对该用户信息进行认证,以便进行数据的传输。即首先客户端110获取用户信息,并对该用户信息进行加密生成第一认证码和第二认证码。之后,预约平台120接收到该第一认证码之后,就对其进行认证,实现对预约平台120对客户端110的身份认证。接着,认证平台130接收该第二认证码,同样地对其进行认证,实现认证平台130对客户端110的身份认证。在身份认证成功之后,客户端110获取包含用户信息的预约信息,并对预约信息进行加密生成加密预约信息;这样,认证平台130经由预约平台120接收到该加密预约信息之后,对其进行解密得到其中包含的预约信息;以此,认证平台130将得到的预约信息反馈给预约平台120,完成预约信息的传输。可以看出,在该数据传输过程中,只有预约平台120对客户端110/认证平台130对客户端110的身份认证成功之后,才能进行预约信息的加密传输,大大保障了预约信息在传输过程中的安全性會K。
[0082]要说明的是,在上述过程中,客户端100基于用户信息生成第一认证码、第二认证码以及加密预约信息时,至少将用户信息中的用户名、用户ID、终端标识码等能够唯一标识该用户的信息中的一个作为计算因子,登录密码、地址信息、业务信息等信息不作为必要的计算因子,可以根据实际情况进行选定。在预约平台120和认证平台130中使用相同的计算因子即可。
[0083]另外,上述过程中,认证平台130对客户端110身份认证成功之后,认证平台130还会基于内部生成的随机数生成一挑战码,并将该随机数和挑战码一并发送至客户端;客户端接收到该随机数,会基于该随机数生成认证挑战码,并将生成的认证挑战码和接收到的挑战码进行比较,以此实现客户端对认证平台的认证。
[0084]对上述实施方式进行改进得到第二种实施方式,如图2所示,在本实施方式中,客户端110中包括一预存有一对称加密算法和一与用户唯一关联的运算算法的第一存储模块
111。还包括一与第一存储模块111连接的第一运算模块112。在数据传输过程中,第一运算模块112基于对称加密算法对用户信息进行加密得到第一认证码、基于运算算法和用户信息得到运算密钥以及基于对称加密算法和运算密钥分别对用户信息和预约信息进行加密生成第二认证码和加密预约信息。
[0085]具体来说,在客户端110中,在登录预约平台120的过程中,第一运算模块112会基于获取到的用户信息、使用内部存储的对称加密算法进行加密生成第一认证码,发送至预约平台120进行认证。在认证平台130对客户端110进行认证的过程中,客户端110中的第一运算模块112首先会使用运算算法对用户信息进行加密得到运算密钥,再基于该运算密钥、使用对称加密算法对用户信息进行加密生成第二认证码,发送至认证平台130中进行身份认证。在预约信息进行传输的过程中,同样地,客户端110中的第一运算模块112首先会使用运算算法对用户信息进行加密得到运算密钥,再基于该运算密钥、使用对称加密算法对预约信息进行加密生成加密预约信息,发送至认证平台130中进行解密。在具体实施例中,上述对称加密算法和下述的对称解密算法为对称解密算法,可以为国密SM4算法等,在此不做具体限定。
[0086]基于上述描述可以看出,在该过程中,由内置的运算算法(下文会详细描述运算算法的生成)与用户唯一关联,自然生成的运算密钥也具备了随机性和唯一性,保障了加密预约信息在传输过程中的安全。
[0087]对上述实施方式进行改进得到第三种实施方式,如图3所示,在本实施方式中,预约平台120中包括相互连接的第二存储模块121和第一认证模块122,其中,第二存储模块121中预存对称解密算法(与客户端110中存储的对称加密算法对应,互为对称解密算法)和用户注册列表;第一认证模块122基于对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息,且基于用户注册列表判断该用户是否为合法用户。具体来说,预约平台120接收到该第一认证码之后,第一认证模块122随即基于内部存储的对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息;进而基于第二存储模块121存储的用户注册列表判断该用户是否为合法用户。更具体来说,第一认证模块122基于得到的用户信息中的用户名/终端标识码在用户注册列表中进行查找,若能查找到该用户信息,则说明该用户为合法用户,否则提醒用户重新输入。要说明的是,在这里我们只具体描述了一种预约平台120对客户端110(用户信息)进行身份认证的方法,如还可以通过短信认证的方式进行登录等。
[0088]对上述实施方式进行改进得到本实施方式,如图4所示,在本实施方式中,认证平台130中包括:第三存储模块131、第二认证模块132以及第二运算模块133,第二运算模块133与第三存储模块131连接,第二认证模块132与第二运算模块133连接。第三存储模块131中预存对称解密算法和运算算法;第二运算模块133基于运算算法和用户信息得到运算密钥、基于对称解密算法和运算密钥对第二认证码进行解密生成认证用户信息、以及基于对称解密算法和运算密钥对加密预约信息进行解密得到预约信息;第二认证模块132基于生成的认证用户信息对接收到的用户信息进行认证,即将生成的认证用户信息与客户端发送的用户信息进行比对,若比对成功,则认证成功,否则认证失败。
[0089]具体,认证平台130接收第一认证码之后,与客户端110中类似,随即第二运算模块133基于预约平台120发送的用户信息和内部存储的运算算法计算得到运算密钥(由认证平台130中存储的运算算法与客户端110中存储的运算算法相同,运算因子也相同,生成的运算密钥也相同,即认证平台130中生成的运算密钥与客户端110中生成的运算密钥相同)。之后,认证平台130基于内部存储的对称解密算法(这里的对称解密算法同样与客户端110中存储的对称加密算法对应,互为对称解密算法)和运算密钥对用户信息进行加密生成认证用户信息。之后,第二认证模块132将生成的认证用户信息与接收到的用户信息进行比对,若比对成功,则认证平台130对客户端110认证成功,否则认证失败,提醒客户端110重新发起认证请求。
[0090]另外,认证平台130对客户端110认证成功了之后,就建立了数据传输通道。当客户端110获取了预约信息且加密生成了加密预约信息之后经由预约平台120将其发送至认证平台130。认证平台130接收到该加密预约信息,同样地,首先第二运算模块133会基于预约平台120发送的用户信息和内部存储的运算算法计算得到运算密钥,之后基于对称解密算法和运算密钥对加密预约信息进行解密得到其中包含的预约信息。再将解密得到的预约信息发送至预约平台120,预约平台120接收到该预约信息,对其进行处理,并对当前预约情况(如预约用户数量等)进行分析,并将处理结果返回客户端110。
[0091]要说明的是,在实施方式中,客户端和认证平台中都是基于用户信息和运算算法生成运算密钥,在这个过程中,至少将用户信息中的用户名、用户ID、终端标识码等能够唯一标识该用户的信息中的一个作为计算因子,登录密码、地址信息、业务信息等信息不作为必要的计算因子,可以根据实际情况进行选定,只要,客户端和和认证平台中使用相同的计算因子即可。如,在一个具体实施例中,客户端中基于用户信息中的用户ID和运算算法生成运算密钥,则在认证平台中同样基于用户信息中的用户ID和运算算法生成运算密钥,以此类推。
[0092]对上述实施方式进行改进得到本实施方式,如图5所示,在本实施方式中,第三存储模块131中还预存有一本地算法,认证平台130中还包括:随机数生成模块134和算法生成模块135,其中,算法生成模块135分别与第三存储模块131和随机数生成模块134连接。在数据传输过程中,随机数生成模块134基于用户信息(具体至少包括用户名、用户ID、终端标识码等能够唯一标识该用户的信息中的一个,还能够包括地址信息等)生成一随机数;算法生成模块135基于随机数对本地算法进行重构生成运算算法,并将其下发至客户端110中存储。在具体实施例中,我们对本地算法的具体形式不做具体限定,如可以为SM4算法等。
[0093]另外,在身份认证的过程中,以上我们描述了认证平台130对客户端110进行身份认证的过程,客户端110对认证平台130进行身份认证的过程包括:第二运算模块133基于随机数和内置的运算算法生成挑战码,并将挑战码下发至客户端110;客户端110接收到该挑战码之后,随即基于接收到的随机数和内置的运算算法生成认证挑战码,并将生成的认证挑战码与认证平台130下发的挑战码进行比对,若比对成功,则实现对认证平台130的认证,否则认证不成功。
[0094]基于以上描述,以下我们对运算算法的生成过程进行描述:
[0095]在本实施方式中,我们采样三种方式对本地算法进行重构,包括:改变本地算法的运算顺序、分组结构及其中包含的运算参数。
[0096]在一个具体实施例中,假若采用改变本地算法的运算顺序对其重构得到运算算法,且生成的随机数为8位数,则算法生成模块135会根据该随机数改变本地算法的运算先后顺序。具体,如果本地算法中包括了 8个步骤,则根据生成的随机数对这8个步骤在运算过程中的顺序进行重新排序。例如,生成的随机数为83251764,则在生成的运算算法中,原本在本地算法中的步骤8优先运算,之后依次是步骤3、步骤2、步骤5、步骤1、步骤7、步骤6以及步骤4先后运算,以此改变了原有本地算法的运算顺序,生成新的运算算法。当然,基于该随机数,改变本地算法的规则可以根据实际情况进行相应的变化,如该随机数中的第I位8代表将本地算法中8个步骤中的第I个步骤作为运算算法中的第8个步骤进行运算;随机数中第二位中的3代表将本地算法中8个步骤中的第2个步骤作为运算算法中的第3个步骤进行运算,以此类推,得到全新的运算算法。
[0097]在一个具体实施例中,采用改变本地算法的分组结构对其重构得到运算算法。具体,若在本地算法的分组结构规则,可以将运算数据分成若干数据块,且每个数据块中包括8个小的分块(分别为則、82、83、84、85、86、87和88),此时假若生成的随机数为25314687,且在该8位随机数中的第一位代表运算顺序,第二为代表相应序号的小分块。则在运算过程中,位于第2位的5表示分块B5与分块BI交换以此改变该分组结构,位于第一位的2表示分块B2优先运算,以此实现目的。当然,以上我们只是示例性的给出了一种【具体实施方式】,在其他实施例中,对上述分组规则(每个数据的长度)、随机数中每位数字对应的意义(如分块交换)等都可以根据实际情况进行设定,且在每种实施方式中,代表运算顺序的位数、代表小分块位置交换的位数都不做限定。
[0098]在一个具体实施例中,假若采用改变本地算法中的运算参数对其重构得到运算算法。具体,假若本地算法中包括运算参数2,得到的随机数为57312468,且该8位随机数中的第三位代表运算参数,则将该本地算法中的运算参数修改为3,以此形成新的运算算法。
[0099]作为一个完整的实施例,同时使用上述三种方式对本地算法进行重构,在成的随机数中的第I位代表运算优先级,第2位代表分组结构,第3位代表运算参数。此时,如若生成的随机数为83572146,则分组块中的B3与BI进行交换改变分组结构,分组块B8优先运算,同时将本地算法中的一常数项变为5,以此生成与用户唯一关联的运算算法。
[0100]如图6所示,本发明还提供了一种数据传输方法,从图中可以看出,在该数据传输方法中包括:SI客户端110获取用户信息,并对用户信息进行加密生成第一认证码和第二认证码;S2预约平台120接收第一认证码,实现对第一认证码的认证;S3认证平台130接收第二认证码,并基于第二认证码实现对客户端110的身份认证;S4客户端110获取包含用户信息的预约信息,并对预约信息进行加密生成加密预约信息;S5认证平台130经由预约平台120接收加密预约信息,对其进行解密得到其中包含的预约信息;S6认证平台130将得到的预约信息反馈给预约平台120,以此完成预约信息的传输。具体来说,上述用户信息包括:用户名、登录密码、用户ID、地址信息以及终端标识码(即设备指纹,如终端的国际移动设备标识(IMEI,Internat1nal Mobile Equipment Identity))。预约信息包括:用户信息和业务信息。在具体实施例中,若该数据传输系统100应用于银行业务预约,则该业务信息可以包括:大额取现、外汇汇兑、外币取现等相关银行服务信息;具体如包括取现金额等,还可以包括预约时间等信息。
[0101 ]更具体来说,在该数据传输方法中,在步骤SI中具体包括:SI I客户端110基于内部存储的对称加密算法对用户信息进行加密得到第一认证码;S12客户端110基于用户信息和内部存储的运算算法得到运算密钥;S13客户端110基于对称加密算法和运算密钥对用户信息进行加密生成第二认证码。
[0102]在步骤S2中具体包括:S21预约平台120基于内部存储的对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息;S22预约平台120基于内置的用户注册列表判断该用户是否为合法用户。
[0103]在步骤S3中具体包括:S31认证平台130接收第一认证码;S32认证平台130基于用户信息和内部存储的运算算法得到运算密钥;S33认证平台130基于内部存储的对称解密算法和运算密钥对第二认证码进行解密生成认证用户信息;S34认证平台130基于生成的认证用户信息实现对用户信息的认证。
[0104]在步骤S4中具体包括:S41客户端110获取预约信息;S42客户端110基于用户信息和内部存储的运算算法得到运算密钥;S43客户端110基于内部存储的对称加密算法和运算密钥对预约信息进行加密生成加密预约信息。
[0105]在步骤S5中具体包括:S51认证平台130经由预约平台120接收加密预约信息;S52认证平台130基于用户信息和内部存储的运算算法得到运算密钥;S53认证平台130基于对称解密算法和运算密钥对加密预约信息进行解密得到预约信息。
[0106]在步骤SI之前具体包括:S01客户端110获取用户信息,并基于该用户信息生成注册请求发送至预约平台120;S02预约平台120接收到注册请求,对其中包括的用户信息进行验证;S03若用户信息验证成功,预约平台120将用户信息存储在内部的当前用户注册列表中形成新的用户注册列表,并发送算法请求至认证平台130 ; S04认证平台130接收算法生成请求,随即基于用户信息生成一随机数;S05认证平台130基于随机数对其内置的本地算法进行重构生成运算算法并进行存储;S06认证平台130将运算算法下发至客户端110。具体该运算算法的生成过程在数据传输系统100中已经详细描述,在此不做赘述。
[0107]在步骤S3之后还包括:认证平台130基于生成的随机数和内置的运算算法生成挑战码,并将挑战码和随机数一起下发至客户端110;客户端110接收挑战码,基于接收到的随机数和内置的运算算法生成认证挑战码;客户端110基于生成的认证挑战码对接收到的认证码进行认证,即将生成的认证挑战码与认证平台130下发的挑战码进行比对,若比对成功,则实现对认证平台130的认证,否则认证不成功。
[0108]应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【主权项】
1.一种数据传输系统,其特征在于,所述数据传输系统中包括:客户端、预约平台以及认证平台,其中, 所述客户端,用于获取预约信息,所述预约信息包括用户信息;且所述客户端对所述用户信息进行加密生成第一认证码和第二认证码、对所述预约信息进行加密生成加密预约信息; 所述预约平台,与所述客户端通信连接,所述预约平台接收所述第一认证码并对其进行认证; 所述认证平台,与所述预约平台通信连接,所述认证平台经由所述预约平台接收所述第二认证码和加密预约信息,并基于所述第二认证码实现对所述客户端的身份认证、基于所述加密预约信息得到所述预约信息并将其反馈给所述预约平台,以此完成所述预约信息在所述数据传输系统中的传输。2.如权利要求1所述的数据传输系统,其特征在于, 所述用户信息包括:用户名、登录密码、用户ID、地址信息以及终端标识码; 所述预约信息包括:所述用户信息和业务信息; 和/或, 所述客户端包括第一存储模块,所述第一存储模块中预存一对称加密算法及一与用户唯一关联的运算算法。3.如权利要求2所述的数据传输系统,其特征在于, 所述客户端包括第一存储模块,所述客户端还包括一与所述第一存储模块连接的第一运算模块; 所述第一运算模块基于所述对称加密算法对所述用户信息进行加密得到第一认证码、基于所述运算算法和所述用户信息得到运算密钥以及基于所述对称加密算法和所述运算密钥分别对所述用户信息和所述预约信息进行加密生成第二认证码和加密预约信息。4.如权利要求1或2或3所述的数据传输系统,其特征在于, 所述预约平台中包括相互连接的第二存储模块和第一认证模块,其中, 所述第二存储模块中预存所述对称解密算法和用户注册列表; 所述第一认证模块,与所述第二存储模块连接,所述第一认证模块基于所述对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息,且基于所述用户注册列表判断该用户是否为合法用户。5.如权利要求1或2或3所述的数据传输系统,其特征在于, 所述认证平台中包括:第三存储模块、第二认证模块以及第二运算模块,其中, 所述第三存储模块中预存所述对称解密算法和所述运算算法; 所述第二运算模块,与所述第三存储模块连接,所述第二运算模块基于所述运算算法和所述用户信息得到运算密钥、基于所述对称解密算法和所述运算密钥对所述第二认证码进行解密得到认证用户信息、以及基于所述对称解密算法和所述运算密钥对所述加密预约信息进行解密得到所述预约信息; 所述第二认证模块,与所述第二运算模块连接,所述第二认证模块基于生成的认证用户信息对接收到的用户信息进行认证。6.如权利要求5所述的数据传输系统,其特征在于, 所述第三存储模块中还预存有一本地算法,所述认证平台中还包括:随机数生成模块和算法生成模块,其中, 所述随机数生成模块,用于生成一随机数; 所述算法生成模块,分别与所述第三存储模块和所述随机数生成模块连接,所述算法生成模块基于所述随机数对所述本地算法进行重构生成所述运算算法,并将其下发至客户?而中存储; 且在所述认证平台中,所述第二运算模块还与所述随机数生成模块连接,所述第二运算模块基于所述随机数和所述运算算法生成挑战码,并将所述挑战码下发至所述客户端;所述客户端基于所述随机数和运算算法生成认证挑战码,实现对认证平台的认证。7.一种数据传输方法,其特征在于,所述数据传输方法中包括: SI客户端获取用户信息,并对所述用户信息进行加密生成第一认证码和第二认证码; S2预约平台接收所述第一认证码,实现对所述第一认证码的认证; S3认证平台接收所述第二认证码,并基于所述第二认证码实现对所述客户端的身份认证; S4所述客户端获取包含用户信息的预约信息,并对所述预约信息进行加密生成加密预约信息; S5所述认证平台经由所述预约平台接收所述加密预约信息,对其进行解密得到其中包含的所述预约信息; S6所述认证平台将得到的预约信息反馈给所述预约平台,以此完成所述预约信息的传输。8.如权利要求7所述的数据传输方法,其特征在于,所述用户信息包括:用户名、登录密码、用户ID、地址信息以及终端标识码;所述预约信息包括:所述用户信息和业务信息。9.如权利要求7或8所述的数据传输方法,其特征在于, 在步骤SI中具体包括: Sll客户端基于内部存储的对称加密算法对所述用户信息进行加密得到第一认证码; S12客户端基于所述用户信息和内部存储的运算算法得到运算密钥; S13客户端基于所述对称加密算法和所述运算密钥对用户信息进行加密生成第二认证码; 和/或,在步骤S2中具体包括: S21预约平台基于内部存储的对称解密算法对接收到的第一认证码进行解密得到其中包括的用户信息; S22预约平台基于内置的用户注册列表判断该用户是否为合法用户; 和/或,在步骤S3中具体包括: S31认证平台接收所述第一认证码; S32认证平台基于用户信息和内部存储的运算算法得到运算密钥; S33认证平台基于内部存储的对称解密算法和所述运算密钥对第二认证码进行解密生成认证用户信息; S34认证平台基于生成的认证用户信息实现对用户信息的认证。10.如权利要求7或8所述的数据传输方法,其特征在于, 在步骤S4中具体包括: S41客户端获取预约信息; S42客户端基于所述用户信息和内部存储的运算算法得到运算密钥; S43客户端基于内部存储的对称加密算法和所述运算密钥对所述预约信息进行加密生成加密预约信息; 和/或,在步骤S5中具体包括: S51认证平台经由预约平台接收所述加密预约信息; S52认证平台基于用户信息和内部存储的运算算法得到运算密钥; S53认证平台基于所述对称解密算法和所述运算密钥对所述加密预约信息进行解密得到所述预约信息。11.如权利要求7或8所述的数据传输方法,其特征在于, 在步骤SI之前具体包括: SOl客户端获取用户信息,并基于该用户信息生成注册请求发送至预约平台; S02预约平台接收到所述注册请求,对其中包括的用户信息进行验证; S03若所述用户信息验证成功,所述预约平台将所述用户信息存储在内部的当前用户注册列表中形成新的用户注册列表,并发送算法请求至认证平台; S04认证平台接收所述算法生成请求,随即基于用户信息生成一随机数; S05认证平台基于所述随机数对其内置的本地算法进行重构生成运算算法并进行存储; S06认证平台将所述运算算法下发至客户端; 和/或,在步骤S3之后还包括: 认证平台基于生成的随机数和内置的运算算法生成挑战码,并将所述挑战码和随机数一起下发至客户端; 客户端接收所述挑战码,基于接收到的随机数和内置的运算算法生成认证挑战码; 客户端基于生成的认证挑战码对接收到的认证码进行认证,以此实现客户端对认证平台的认证。
【文档编号】H04L29/06GK105827620SQ201610260038
【公开日】2016年8月3日
【申请日】2016年4月25日
【发明人】谈剑锋, 熊志刚, 李呈舜, 姜立稳, 胡剑波, 谢勇, 钱金金
【申请人】上海众人网络安全技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1