CN107688733A - 业务接口调用方法、装置、用户终端和可读存储介质 - Google Patents

业务接口调用方法、装置、用户终端和可读存储介质 Download PDF

Info

Publication number
CN107688733A
CN107688733A CN201710613837.7A CN201710613837A CN107688733A CN 107688733 A CN107688733 A CN 107688733A CN 201710613837 A CN201710613837 A CN 201710613837A CN 107688733 A CN107688733 A CN 107688733A
Authority
CN
China
Prior art keywords
difficulty factor
degree
work
default
server
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.)
Granted
Application number
CN201710613837.7A
Other languages
English (en)
Other versions
CN107688733B (zh
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.)
OneConnect Smart Technology Co Ltd
Original Assignee
OneConnect Financial Technology Co Ltd Shanghai
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 OneConnect Financial Technology Co Ltd Shanghai filed Critical OneConnect Financial Technology Co Ltd Shanghai
Priority to CN201710613837.7A priority Critical patent/CN107688733B/zh
Priority to PCT/CN2017/104838 priority patent/WO2019019393A1/zh
Publication of CN107688733A publication Critical patent/CN107688733A/zh
Application granted granted Critical
Publication of CN107688733B publication Critical patent/CN107688733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种业务接口调用方法、装置、用户终端和可读存储介质,该方法包括获取输入的业务数据;获取输入的工作量证明指令;向服务器发送预设工作量难度系数获取请求;接收服务器返回的预设工作量难度系数;根据业务数据和预设工作量难度系数计算当前工作量难度系数;当当前工作量难度系数大于等于预设工作量难度系数时,则调用用户终端的业务接口向服务器发送所述业务数据。上述的业务安全调用方法、装置、用户终端和可读存储介质,只有当前工作量难度系数大于等于从服务器获取的预设工作量难度系数时,才会认为该业务数据是通过人工操作产生的,从而才会调用相应的业务接口,向服务器发送业务数据,防止了业务接口被自动化软件滥用。

Description

业务接口调用方法、装置、用户终端和可读存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种业务接口调用方法、装置、用户终端和可读存储介质。
背景技术
随着互联网技术的发展,许多业务均采用自动化的处理过程,从而可以提高业务处理的效率,节约时间。但是仍存在一些业务由于需要保护个人信息等原因,需要经过人工操作才可以进行处理,例如登录网上银行的业务等,但是当前存在大量的自动化软件未经过用户授权就通过业务接口来获取银行账单等个人隐私信息,造成业务接口滥用,个人信息泄露。
传统中,为了防止业务接口被自动化软件滥用,通过图灵测试的方式来识别人工操作,只有通过图灵测试的人工操作才可以调用相应的业务接口,请求服务器返回相应的业务结果。但是由于人类操作一般是通过语音反馈、键盘鼠标动作等等来表示,图灵测试对于该些操作识别的正确率低,从而不能准确地区分人类操作和自动化软件的操作,导致仍存在自动化软件滥用业务接口的情况。
发明内容
基于此,有必要针对传统技术中存在自动化软件滥用业务接口的问题,提供一种业务接口调用方法、装置、用户终端和可读存储介质。
一种业务接口调用方法,所述方法包括:
获取输入的业务数据;
获取输入的与所述业务数据对应的工作量证明指令;
向服务器发送预设工作量难度系数获取请求;
接收所述服务器根据所述预设工作量难度系数获取请求返回的与所述工作量证明指令对应的预设工作量难度系数;
根据所述业务数据和所述预设工作量难度系数计算当前工作量难度系数;
当所述当前工作量难度系数大于等于所述预设工作量难度系数时,则调用用户终端的业务接口向所述服务器发送所述业务数据。
在其中一个实施例中,所述根据所述业务数据和所述预设工作量难度系数,计算当前工作量难度系数的步骤,包括:
从服务器获取与所述预设工作量难度系数获取请求对应的会话标识;
根据预设的排序组合方式对所述业务数据、预设工作量难度系数以及会话标识进行排序组合,得到组合数据;
对所述组合数据进行消息摘要计算得到散列值;
获取所述散列值中预设字符的位置作为当前工作量难度系数。
在其中一个实施例中,所述获取所述散列值中预设字符的位置作为当前工作量难度系数的步骤,包括:
将所述散列值转换为二进制字符;
获取所述二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
在其中一个实施例中,所述方法还包括:
当所述当前工作量难度系数小于所述预设工作量难度系数时,则按照预设步长调整所述会话标识,并根据所述业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至所述当前工作量难度系数大于等于所述预设工作量难度系数。
在其中一个实施例中,所述方法还包括:
调用用户终端的业务接口向所述服务器发送所述当前工作量难度系数,以使所述服务器根据所述业务数据和预设工作难度系数计算目标工作量难度系数;
通过所述业务接口接收所述服务器在所述当前工作量难度系数与目标工作量难度系数相一致时通过服务器业务接口返回的与所述业务数据对应的业务数据处理结果。
一种业务接口调用装置,所述装置包括:
获取模块,用于获取输入的业务数据,以及获取输入的与所述业务数据对应的工作量证明指令;
发送模块,用于向服务器发送预设工作量难度系数获取请求;
接收模块,用于接收所述服务器根据所述预设工作量难度系数获取请求返回的与所述工作量证明指令对应的预设工作量难度系数;
计算模块,用于根据所述业务数据和所述预设工作量难度系数计算当前工作量难度系数;
调用模块,用于当所述当前工作量难度系数大于等于所述预设工作量难度系数时,则调用用户终端的业务接口向所述服务器发送所述业务数据。
在其中一个实施例中,所述计算模块包括:
会话标识获取单元,用于从服务器获取与所述预设工作量难度系数获取请求对应的会话标识;
组合单元,用于根据预设的排序组合方式对所述业务数据、预设工作量难度系数以及会话标识进行排序组合得到组合数据;
散列值计算单元,用于对所述组合数据进行消息摘要计算得到散列值;
当前工作量难度系数获取单元,用于获取所述散列值中预设字符的位置作为当前工作量难度系数。
在其中一个实施例中,所述当前工作量难度系数获取单元包括:
转换单元,用于将所述散列值转换为二进制字符;
位置获取单元,用于获取所述二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
一种用户终端,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法中的步骤。
上述的业务安全调用方法、装置、用户终端和可读存储介质,只有通过业务数据、预设工作量难度系数计算得到的当前工作量难度系数大于等于从服务器获取的预设工作量难度系数时,才会认为该业务数据是通过人工操作产生的,从而才会调用相应的业务接口,向服务器发送业务数据,但是如果采用自动化软件来处理处理时,由于自动化软件在处理是采用的是批量处理的方式,无法批量向终端输入相应的工作量难度证明指令,从而不能通过业务接口向服务器发送业务数据,防止了业务接口被自动化软件滥用。
附图说明
图1为一实施例中业务接口调用方法的应用场景图;
图2为一实施例中业务接口调用方法的流程图;
图3为一实施例中的业务接口调用方法的时序图;
图4为一实施例中的业务接口调用装置的示意图;
图5为另一实施例中的业务接口调用装置的示意图;
图6为一实施例中的用户终端的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
在详细说明根据本发明的实施例前,应该注意到的是,所述的实施例主要在于与业务接口调用方法、装置、用户终端和可读存储介质相关的步骤和系统组件的组合。因此,所属系统组件和方法步骤已经在附图中通过常规符号在适当的位置表示出来了,并且只示出了与理解本发明的实施例有关的细节,以免因对于得益于本发明的本领域普通技术人员而言显而易见的那些细节模糊了本发明的公开内容。
在本文中,诸如左和右,上和下,前和后,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。
参阅图1,图1为一实施例中业务接口调用方法的应用场景图,其中包括业务终端和服务器,业务终端可以与服务器进行通信。用户通过业务终端进行业务处理,然后业务终端将业务处理所得到的业务数据发送给服务器,以从服务器获取与该业务数据对应的处理结果。其中业务终端可以为用户的电脑、手机、平板电脑等设备。
请参阅图2,在其中一个实施例中,提供一种业务接口调用方法,本实施例以该方法应用到上述图1中的业务终端来举例说明。该业务终端上运行有业务接口调用程序,通过该业务接口调用程序来实施业务接口调用方法。该方法具体包括如下步骤:
S202:获取输入的业务数据。
具体地,业务终端可以提供业务表单显示界面,从而用户可以通过业务表单显示界面向业务终端输入相应的业务数据。例如登录页面作为业务表单时,其上显示有用户账号和用户密码的输入框,用户可以通过该输入框输入用户账号和用户密码,此时用户账号和用户密码即为此处的业务数据。此外,当查询页面作为业务表单时,例如浏览器的查询页面,其上显示有搜索框,用户可以通过该搜索框输入所要所搜的内容的关键字,此时该关键字即为此处的业务数据。
S204:获取输入的与业务数据对应的工作量证明指令。
具体地,工作量证明指令即用户向用户终端输入的指令,其是为了向用户终端表示当前使用用户终端的不是自动化软件。其中,可以通过在用户终端的显示界面上设置一按钮,例如“我不是机器人”按钮,或者“I am not a robot”按钮,当用户点击该按钮时,则生成与业务数据对应的工作量证明指令。
S206:向服务器发送预设工作量难度系数获取请求。
具体地,为了计算当前的工作量难度系数,用户终端开启一轻量级的会话,向服务器发送预设工作量难度系数获取请求以获取存储在服务器的预设工作量难度系数。从服务器获取预设工作量难度系数是为了防止用户终端仅根据自身存储的内容计算当前工作量难度系数,如果用户终端仅根据自身存储的内容计算当前工作量难度系数,则用户终端可以随意地更改数据,或者不更改数据,直接向服务器发送上一次的工作量难度系数,由于服务器也是根据用户终端发送的数据来计算当前工作量难度系数,因此服务器无法准确地判断用户终端所计算的当前工作量难度系数是否正确,从而导致用户终端极易被非法使用。
S208:接收服务器根据预设工作量难度系数获取请求返回的与工作量证明指令对应的预设工作量难度系数。
具体地,当服务器接收到预设工作量难度系数获取请求时,则会根据该请求查询与工作量证明指令对应的预设工作量难度系数,例如服务器中可以存储有一表格,该表格中存储有工作量证明指令与预设工作量难度系数的对应关系,服务器可以根据工作量证明指令查询到对应的预设工作量难度系数。
S210:根据业务数据和预设工作量难度系数计算当前工作量难度系数。
具体地,当用户终端接收到服务器返回的预设工作量难度系数时,则根据用户终端中存储的业务数据和服务器返回的预设工作量难度系数来计算当前工作量难度系数,这样根据两端的数据来计算当前工作量难度系数,可以防止用户终端被自动化等软件使用,例如当自动化软件使用用户终端时,其一般会批量来进行业务处理,从而也会批量计算当前工作量难度系数,因此需要批量从服务器获取对应的预设工作量难度系数,这对于批量处理来说是比较难以实现的,其极易造成处理过程的混乱,从而导致业务处理失败。
S212:当当前工作量难度系数大于等于预设工作量难度系数时,则调用用户终端的业务接口向服务器发送业务数据。
具体地,当当前工作量难度系数大于等于预设工作量难度系数时,即表明用户终端在处理当前业务时,需要耗费一定的工作量,因此其不是自动化软件,从而可以调用相应的业务接口向服务器发送业务数据。如果不使用该工作量证明机制来证明用户终端在处理当前业务时,需要耗费一定的工作量,例如当使用自动化软件来处理当前业务时,则业务接口会被自动化软件一直占用,导致真正需要使用业务接口的业务无法正常处理,造成业务接口的滥用。
上述的业务安全调用方法,只有通过业务数据、预设工作量难度系数计算得到的当前工作量难度系数大于等于从服务器获取的预设工作量难度系数时,才会认为该业务数据是通过人工操作产生的,从而才会调用相应的业务接口,向服务器发送业务数据,但是如果采用自动化软件来处理处理时,由于自动化软件在处理是采用的是批量处理的方式,无法批量向终端输入相应的工作量难度证明指令,从而不能通过业务接口向服务器发送业务数据,防止了业务接口被自动化软件滥用。
在其中一个实施例中,根据业务数据和预设工作量难度系数,计算当前工作量难度系数的步骤可以包括:从服务器获取与预设工作量难度系数获取请求对应的会话标识;根据预设的排序组合方式对业务数据、预设工作量难度系数以及会话标识进行排序组合,得到组合数据;对组合数据进行消息摘要计算得到散列值;获取散列值中预设字符的位置作为当前工作量难度系数。
具体地,会话标识是指用户终端与服务器本次获取预设工作量难度系数会话的会话标识,其一般为一随机数,例如0、1、2、3、4等。预设的排序组合方式是服务器和用户终端约定的排序组合方式,例如业务数据排在预设工作量难度系数之前,预设工作量难度系数排在会话标识之前,或者业务数据排在会话标识之前,会话标识排在预设工作量难度系数之前等,在此不限制该排序的具体方式,只要用户终端和服务器关于该排序的方式是一致的即可。消息摘要计算可以是通过MD5算法计算,或者其他的消息摘要计算方式进行计算。
在其中一个实施例中,获取散列值中预设字符的位置作为当前工作量难度系数的步骤可以包括:将散列值转换为二进制字符;获取二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
具体地,当前工作量难度系数是根据业务数据、预设工作量难度系数以及会话标识所形成的组合数据所计算的散列值求得的,为了方便将该散列值转化为二进制字符,在其他实施例中,还可以转化为十进制字符,十六进制字符等。当转化为二进制字符时,预设字符可以为1或0,例如当预设字符为1时,则可以将转化后的二进制字符从左往右排列,获取该二进制字符中的第一个非零的一,即第一个1所在的位置作为当前工作量难度系数,例如当二进制字符为“0000000101000101”时,则当前工作量难度系数为8,因为第一个1排列在第8位。
在其中一个实施例中,上述的业务接口调用方法还可以包括:当当前工作量难度系数小于预设工作量难度系数时,则按照预设步长调整会话标识,并根据业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至当前工作量难度系数大于等于预设工作量难度系数。
具体地,当第一次所计算的当前工作量难度系数小于预设工作量难度系数时,可以调整会话标识,例如当会话标识为一随机数,且为0时,预设步长可以为1、2、3、6等,当预设步长为1时,则调整会话标识为1,再计算会话标识为1时的当前工作量难度系数,直至当前工作量难度系数大于等于预设工作量难度系数时,再调用用户终端的业务接口向服务器发送相应的业务数据。
在其中一个实施例中,业务接口调用方法还可以包括:调用用户终端的业务接口向服务器发送当前工作量难度系数,以使服务器根据业务数据和预设工作难度系数计算目标工作量难度系数;通过业务接口接收服务器在当前工作量难度系数与目标工作量难度系数相一致时通过服务器的业务接口返回的与业务数据对应的业务数据处理结果。
具体地,用户终端调用用户终端的业务接口向服务器发送当前工作量难度系数和业务数据,服务器首先查询到服务器存储的预设工作量难度系数,再根据已存储的预设工作量难度系数和业务数据按照与用户终端一样的方式计算目标工作量难度系数,只有该目标工作量难度系数与用户终端发送来的当前工作量难度系数相同时,服务器才会调用服务器响应的业务接口向用户终端返回与业务数据对应的处理结果。
请参阅图3所示,图3为一实施例中的业务接口调用方法的时序图,其中该实施例中以用户终端b需要通过用户终端b的业务接口a请求服务器s的一个业务接口i的数据,例如查询当前外汇汇率业务。
首先,用户终端提供用户表单界面,其包含用户名Username、密码Password和外汇符号forexTag,以及一工作量证明指令按钮“我不是机器人”,用户通过用户表单界面输入用户名、密码和外汇符号后,点击工作量证明指令按钮,从而用户终端会向服务器请求一与当前工作量证明指令,即与当前业务数据对应的预设工作量难度系数,服务器在接收到预设工作量难度系数获取请求后,会向用户终端返回一预设工作量难度系数以及本次会话的会话标识,假设本次预设工作量难度系数为7,会话标识为0。
其次,用户终端根据服务器返回的预设工作量难度系数、本次会话的会话标识和业务数据计算当前工作量难度系数。其中业务数据包含用户名Username、密码Password和外汇符号forexTag。例如,用户终端将预设工作量难度系数、本次会话的会话标识和业务数据进行排列组合,如下所示:
difficulty=7&forextag=usd&nonce=0&password=secret&sid=123123123.123123.123&username=hello
其中,difficulty表示预设当前工作难度系数,forextag表示外汇符号,nonce表示随机数,password表示密码,sid表示安全标识符,是标识用户、组和计算机账户的唯一地号码,username表示用户名。
第三,将排序组合后的组合数据进行消息摘要计算,例如可以通过SHA256消息摘要计算得到散列值,即hash值:5285ea9f915b1238822ec0529f6aa7600adf23a6438858d62d278a515fe89ca9。
第四,将该散列值从左向右排列,然后转换为二进制字符,当第一个非0的1出现在第6个位置,可以定义改当前工作量难度系数为5。如果预设的工作量难度系数为7,那么当前工作量难度系数不满足预设的工作量难度系数。
第五,按照预设步长递增会话标识nonce值,得到新的组合数据:
difficulty=7&forextag=usd&nonce=1&password=secret&sid=123123123.123123.123&username=hello
然后重复上述第三步,再次计算散列值,直至满足预设工作量难度系数,上述当会话标识nonce=95的时候,得到散列值为:
01db19b5af692ea1831dc2a499ac05cf32c3d30106d292f0dd60a181c8d5f364
其最左边有7个0,即当前工作量难度系数为7,等于预设工作量难度系数,于是将组合数据以及散列值提交给服务器:
difficulty=7&forextag=usd&nonce=95&password=secret&sid=123123123.123123.123&username=hello&hash=01db19b5af692ea1831dc2a499ac05cf32c3d30106d292f0dd60a181c8d5f364
第六,服务器在接收到用户终端所发送的上述组合数据和散列值时,对上述组合数据和散列值进行解析,得到散列值和组合数据:
hash=01db19b5af692ea1831dc2a499ac05cf32c3d30106d292f0dd60a181c8d5f364以及
difficulty=7&forextag=usd&nonce=95&password=secret&sid=123123123.123123.123&username=hello
然后服务器可以根据组合数据(其中包含预设工作量难度系数以及业务数据)计算一次得到目标散列值:
Hash’=01db19b5af692ea1831dc2a499ac05cf32c3d30106d292f0dd60a181c8d5f364
其与用户终端所提交来的散列值是一致的,说明用户终端是经过大量的计算搜索得到的会话标识,进而得到满足预设工作量难度系数的散列值,从而该请求合法,因此服务器可以调用服务器业务接口与给用户终端返回业务数据相应的处理结果,防止服务器业务接口被滥用。
其中服务器可以根据组合数据计算一次得到目标散列值时,可以先根据组合数据获取到预设工作量难度系数并与本地存储的预设工作量难度系数进行比较,只要两者相同时才会继续下一步,或者直接获取本地存储的工作量难度系数以及组合数据中的业务数据、会话标识来重新形成组合数据,例如按照与用户终端一样的排序组合方式进行排序组合后获取组合数据,再计算得到目标散列值,根据目标散列值得到目标工作量难度系数,当目标工作量难度系数与用户终端所提交的当前工作量难度系数一致时,则说明用户终端是经过大量的计算搜索得到的会话标识,进而得到满足预设工作量难度系数的散列值,从而该请求合法,因此服务器可以调用服务器业务接口与给用户终端返回业务数据相应的处理结果,防止服务器业务接口被滥用。
参阅图4,图4为一实施例中的业务接口调用装置的示意图,该业务接口调用装置包括:
获取模块110,用于获取输入的业务数据,以及获取输入的与业务数据对应的工作量证明指令。
发送模块120,用于向服务器发送预设工作量难度系数获取请求。
接收模块130,用于接收服务器根据预设工作量难度系数获取请求返回的与工作量证明指令对应的预设工作量难度系数。
计算模块140,用于根据业务数据和预设工作量难度系数计算当前工作量难度系数。
调用模块150,用于当当前工作量难度系数大于等于预设工作量难度系数时,则调用用户终端的业务接口向服务器发送业务数据。
在其中一个实施例中,参阅图5,图5为另一实施例中的业务接口调用装置的示意图,其中计算模块140可以包括:
会话标识获取单元141,用于从服务器获取与预设工作量难度系数获取请求对应的会话标识。
组合单元142,用于根据预设的排序组合方式对业务数据、预设工作量难度系数以及会话标识进行排序组合得到组合数据。
散列值计算单元143,用于对组合数据进行消息摘要计算得到散列值。
当前工作量难度系数获取单元144,用于获取散列值中预设字符的位置作为当前工作量难度系数。
在其中一个实施例中,当前工作量难度系数获取单元144可以包括:
转换单元1441,用于将散列值转换为二进制字符。
位置获取单元1442,用于获取二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
在其中一个实施例中,调用模块150还可以用于当当前工作量难度系数小于预设工作量难度系数时,则按照预设步长调整会话标识,并根据业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至当前工作量难度系数大于等于预设工作量难度系数。
在其中一个实施例中,调用模块150还可以用于调用用户终端的业务接口向服务器发送当前工作量难度系数,以使服务器根据业务数据和预设工作难度系数计算目标工作量难度系数;通过业务接口接收服务器在当前工作量难度系数与目标工作量难度系数相一致时通过服务器的业务接口返回的与业务数据对应的业务数据处理结果。
上述关于业务接口调用装置的限定可以参加上文中关于业务接口调用方法的限定,在此不再赘述。
请参阅图6,图6为一实施例中的用户终端的结构示意图,该用户终端可以是常规终端或其他任何合适的计算器设备,其包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其中该存储器可以包括非易失性存储介质以及内存储器,该计算机程序可以存储在该非易失性存储介质中,处理器执行程序时实现以下步骤:获取输入的业务数据;获取输入的与业务数据对应的工作量证明指令;向服务器发送预设工作量难度系数获取请求;接收服务器根据预设工作量难度系数获取请求返回的与工作量证明指令对应的预设工作量难度系数;根据业务数据和预设工作量难度系数计算当前工作量难度系数;当当前工作量难度系数大于等于预设工作量难度系数时,则调用用户终端的业务接口向服务器发送业务数据。
在其中一个实施例中,处理器执行程序时还可以实现以下步骤:从服务器获取与预设工作量难度系数获取请求对应的会话标识;根据预设的排序组合方式对业务数据、预设工作量难度系数以及会话标识进行排序组合,得到组合数据;对组合数据进行消息摘要计算得到散列值;获取散列值中预设字符的位置作为当前工作量难度系数。
在其中一个实施例中,处理器执行程序时还可以实现以下步骤:将散列值转换为二进制字符;获取二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
在其中一个实施例中,处理器执行程序时还可以实现以下步骤:当当前工作量难度系数小于预设工作量难度系数时,则按照预设步长调整会话标识,并根据业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至当前工作量难度系数大于等于预设工作量难度系数。
在其中一个实施例中,处理器执行程序时还可以实现以下步骤:调用用户终端的业务接口向服务器发送当前工作量难度系数,以使服务器根据业务数据和预设工作难度系数计算目标工作量难度系数;通过业务接口接收服务器在当前工作量难度系数与目标工作量难度系数相一致时通过服务器的业务接口返回的与业务数据对应的业务数据处理结果。
上述对于用户终端的限定可以参见上文中对于业务接口调用方法的具体限定,在此不再赘述。
请继续参阅图6,还提供一种计算机可读存储介质,其上存储有计算机程序,如图6中所示的非易失性存储介质,其中,该程序被处理器执行时实现以下步骤:获取输入的业务数据;获取输入的与业务数据对应的工作量证明指令;向服务器发送预设工作量难度系数获取请求;接收服务器根据预设工作量难度系数获取请求返回的与工作量证明指令对应的预设工作量难度系数;根据业务数据和预设工作量难度系数计算当前工作量难度系数;当当前工作量难度系数大于等于预设工作量难度系数时,则调用用户终端的业务接口向服务器发送业务数据。
在其中一个实施例中,该程序被处理器执行时还可以实现以下步骤:从服务器获取与预设工作量难度系数获取请求对应的会话标识;根据预设的排序组合方式对业务数据、预设工作量难度系数以及会话标识进行排序组合,得到组合数据;对组合数据进行消息摘要计算得到散列值;获取散列值中预设字符的位置作为当前工作量难度系数。
在其中一个实施例中,该程序被处理器执行时还可以实现以下步骤:将散列值转换为二进制字符;获取二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
在其中一个实施例中,该程序被处理器执行时还可以实现以下步骤:当当前工作量难度系数小于预设工作量难度系数时,则按照预设步长调整会话标识,并根据业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至当前工作量难度系数大于等于预设工作量难度系数。
在其中一个实施例中,该程序被处理器执行时还可以实现以下步骤:调用用户终端的业务接口向服务器发送当前工作量难度系数,以使服务器根据业务数据和预设工作难度系数计算目标工作量难度系数;通过业务接口接收服务器在当前工作量难度系数与目标工作量难度系数相一致时通过服务器的业务接口返回的与业务数据对应的业务数据处理结果。
上述对于计算机可读存储介质的限定可以参见上文中对于业务接口调用方法的具体限定,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的调用范围。因此,本发明专利的调用范围应以所附权利要求为准。

Claims (10)

1.一种业务接口调用方法,其特征在于,所述方法包括:
获取输入的业务数据;
获取输入的与所述业务数据对应的工作量证明指令;
向服务器发送预设工作量难度系数获取请求;
接收所述服务器根据所述预设工作量难度系数获取请求返回的与所述工作量证明指令对应的预设工作量难度系数;
根据所述业务数据和所述预设工作量难度系数计算当前工作量难度系数;
当所述当前工作量难度系数大于等于所述预设工作量难度系数时,则调用用户终端的业务接口向所述服务器发送所述业务数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述业务数据和所述预设工作量难度系数,计算当前工作量难度系数的步骤,包括:
从服务器获取与所述预设工作量难度系数获取请求对应的会话标识;
根据预设的排序组合方式对所述业务数据、预设工作量难度系数以及会话标识进行排序组合,得到组合数据;
对所述组合数据进行消息摘要计算得到散列值;
获取所述散列值中预设字符的位置作为当前工作量难度系数。
3.根据权利要求2所述的方法,其特征在于,所述获取所述散列值中预设字符的位置作为当前工作量难度系数的步骤,包括:
将所述散列值转换为二进制字符;
获取所述二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述当前工作量难度系数小于所述预设工作量难度系数时,则按照预设步长调整所述会话标识,并根据所述业务数据、预设工作量难度系数以及调整后的会话标识计算当前工作量难度系数,直至所述当前工作量难度系数大于等于所述预设工作量难度系数。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
调用用户终端的业务接口向所述服务器发送所述当前工作量难度系数,以使所述服务器根据所述业务数据和预设工作难度系数计算目标工作量难度系数;
通过所述业务接口接收所述服务器在所述当前工作量难度系数与目标工作量难度系数相一致时通过服务器业务接口返回的与所述业务数据对应的业务数据处理结果。
6.一种业务接口调用装置,其特征在于,所述装置包括:
获取模块,用于获取输入的业务数据,以及获取输入的与所述业务数据对应的工作量证明指令;
发送模块,用于向服务器发送预设工作量难度系数获取请求;
接收模块,用于接收所述服务器根据所述预设工作量难度系数获取请求返回的与所述工作量证明指令对应的预设工作量难度系数;
计算模块,用于根据所述业务数据和所述预设工作量难度系数计算当前工作量难度系数;
调用模块,用于当所述当前工作量难度系数大于等于所述预设工作量难度系数时,则调用用户终端的业务接口向所述服务器发送所述业务数据。
7.根据权利要求6所述的装置,其特征在于,所述计算模块包括:
会话标识获取单元,用于从服务器获取与所述预设工作量难度系数获取请求对应的会话标识;
组合单元,用于根据预设的排序组合方式对所述业务数据、预设工作量难度系数以及会话标识进行排序组合得到组合数据;
散列值计算单元,用于对所述组合数据进行消息摘要计算得到散列值;
当前工作量难度系数获取单元,用于获取所述散列值中预设字符的位置作为当前工作量难度系数。
8.根据权利要求7所述的装置,其特征在于,所述当前工作量难度系数获取单元包括:
转换单元,用于将所述散列值转换为二进制字符;
位置获取单元,用于获取所述二进制字符中第一个非零的一所在的位置作为当前工作量难度系数。
9.一种用户终端,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5中任意一项所述方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至5任一项所述方法中的步骤。
CN201710613837.7A 2017-07-25 2017-07-25 业务接口调用方法、装置、用户终端和可读存储介质 Active CN107688733B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710613837.7A CN107688733B (zh) 2017-07-25 2017-07-25 业务接口调用方法、装置、用户终端和可读存储介质
PCT/CN2017/104838 WO2019019393A1 (zh) 2017-07-25 2017-09-30 业务接口调用方法、装置、用户终端和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710613837.7A CN107688733B (zh) 2017-07-25 2017-07-25 业务接口调用方法、装置、用户终端和可读存储介质

Publications (2)

Publication Number Publication Date
CN107688733A true CN107688733A (zh) 2018-02-13
CN107688733B CN107688733B (zh) 2020-03-06

Family

ID=61152983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710613837.7A Active CN107688733B (zh) 2017-07-25 2017-07-25 业务接口调用方法、装置、用户终端和可读存储介质

Country Status (2)

Country Link
CN (1) CN107688733B (zh)
WO (1) WO2019019393A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109905395A (zh) * 2019-03-07 2019-06-18 武汉斗鱼鱼乐网络科技有限公司 一种验证客户端可信的方法及相关装置
CN111314332A (zh) * 2020-02-05 2020-06-19 中国工商银行股份有限公司 访问控制方法、装置、计算机系统和计算机可读存储介质
CN111510427A (zh) * 2020-03-06 2020-08-07 杜晓楠 在i2p网络中缓解路径创建攻击的方法、计算机可读存储介质和i2p网络
CN111541732A (zh) * 2020-03-06 2020-08-14 杜晓楠 在p2p网络中避免客户端无效占用连接资源的方法、计算机可读存储介质和p2p网络
CN111555900A (zh) * 2020-03-06 2020-08-18 杜晓楠 引导p2p网络中客户端节点合理选择节点带宽的方法、计算机可读存储介质和p2p网络
WO2021175036A1 (zh) * 2020-03-06 2021-09-10 杜晓楠 在p2p网络中避免客户端节点长时间无效占用连接资源和引导客户端节点合理选择节点带宽

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104184709A (zh) * 2013-05-23 2014-12-03 腾讯科技(深圳)有限公司 验证方法、装置、服务器、业务数据中心和系统
CN104539434A (zh) * 2015-01-23 2015-04-22 济南同智伟业软件股份有限公司 基于时间戳和gps定位的电子签章系统及方法
CN105046141A (zh) * 2015-06-12 2015-11-11 北京京东尚科信息技术有限公司 一种自适应的验证码设计方法及系统
US20160218879A1 (en) * 2015-01-23 2016-07-28 Daniel Robert Ferrin Method and apparatus for the limitation of the mining of blocks on a block chain
CN106470229A (zh) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 一种业务相关信息处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105743893B (zh) * 2016-01-29 2018-10-23 大连秘阵科技有限公司 一次性动态定位认证方法、系统和密码变更方法
CN106571925B (zh) * 2016-10-24 2020-07-10 北京云图科瑞科技有限公司 对区块链系统中的区块进行工作量证明的方法及装置
CN106651346A (zh) * 2016-11-28 2017-05-10 上海凯岸信息科技有限公司 基于区块链的征信数据共享与交易系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104184709A (zh) * 2013-05-23 2014-12-03 腾讯科技(深圳)有限公司 验证方法、装置、服务器、业务数据中心和系统
CN104539434A (zh) * 2015-01-23 2015-04-22 济南同智伟业软件股份有限公司 基于时间戳和gps定位的电子签章系统及方法
US20160218879A1 (en) * 2015-01-23 2016-07-28 Daniel Robert Ferrin Method and apparatus for the limitation of the mining of blocks on a block chain
CN105046141A (zh) * 2015-06-12 2015-11-11 北京京东尚科信息技术有限公司 一种自适应的验证码设计方法及系统
CN106470229A (zh) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 一种业务相关信息处理方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109905395A (zh) * 2019-03-07 2019-06-18 武汉斗鱼鱼乐网络科技有限公司 一种验证客户端可信的方法及相关装置
CN109905395B (zh) * 2019-03-07 2021-09-07 武汉斗鱼鱼乐网络科技有限公司 一种验证客户端可信的方法及相关装置
CN111314332A (zh) * 2020-02-05 2020-06-19 中国工商银行股份有限公司 访问控制方法、装置、计算机系统和计算机可读存储介质
CN111510427A (zh) * 2020-03-06 2020-08-07 杜晓楠 在i2p网络中缓解路径创建攻击的方法、计算机可读存储介质和i2p网络
CN111541732A (zh) * 2020-03-06 2020-08-14 杜晓楠 在p2p网络中避免客户端无效占用连接资源的方法、计算机可读存储介质和p2p网络
CN111555900A (zh) * 2020-03-06 2020-08-18 杜晓楠 引导p2p网络中客户端节点合理选择节点带宽的方法、计算机可读存储介质和p2p网络
WO2021175036A1 (zh) * 2020-03-06 2021-09-10 杜晓楠 在p2p网络中避免客户端节点长时间无效占用连接资源和引导客户端节点合理选择节点带宽
CN111510427B (zh) * 2020-03-06 2022-02-11 杜晓楠 在i2p网络系统中缓解路径创建攻击的方法、计算机可读存储介质和i2p网络系统

Also Published As

Publication number Publication date
CN107688733B (zh) 2020-03-06
WO2019019393A1 (zh) 2019-01-31

Similar Documents

Publication Publication Date Title
CN107688733A (zh) 业务接口调用方法、装置、用户终端和可读存储介质
CN105900396B (zh) 移动云服务体系架构
US7711684B2 (en) Collaborative content evaluation
US9130925B2 (en) Personalized security management
US8023927B1 (en) Abuse-resistant method of registering user accounts with an online service
CN110166446B (zh) 一种基于安全多方计算的地理加权平均中心的实现方法
US8898764B2 (en) Authenticating user through web extension using token based authentication scheme
EP3100432B1 (en) Virtual identity of a user based on disparate identity services
CN104184832B (zh) 网络应用中的数据提交方法及装置
US8838679B2 (en) Providing state service for online application users
US20240177057A1 (en) Federated learning method and apparatus, electronic device, and storage medium
US11838289B2 (en) Systems and methods for activating an authentication token within a communication platform
CN106301978A (zh) 团伙成员账号的识别方法、装置及设备
CN109345190B (zh) 一种数据处理方法及装置
CN102186173A (zh) 身份认证方法及系统
CN108418790A (zh) 业务跟踪方法、装置、终端设备及存储介质
CN113268336A (zh) 一种服务的获取方法、装置、设备以及可读介质
Cai et al. Toward a secure, rich, and fair query service for light clients on public blockchains
US9641489B1 (en) Fraud detection
CN107196898A (zh) 账户登录方法、页面显示方法、客户端、和服务器
EP3407568A1 (en) Service processing method and device
CN116633688A (zh) 一种aigc服务隐私保护方法和设备
CN111488344A (zh) 基于业务数据区块链的用户操作数据上链方法及系统
CN103957245B (zh) 互联网数据获取方法及装置
US7565356B1 (en) Liberty discovery service enhancements

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180529

Address after: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant after: Shenzhen one ledger Intelligent Technology Co., Ltd.

Address before: 200000 Xuhui District, Shanghai Kai Bin Road 166, 9, 10 level.

Applicant before: Shanghai Financial Technologies Ltd

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong

Applicant after: Shenzhen one ledger Intelligent Technology Co., Ltd.

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: Shenzhen one ledger Intelligent Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant