JP6912583B2 - サービス処理方法および装置 - Google Patents

サービス処理方法および装置 Download PDF

Info

Publication number
JP6912583B2
JP6912583B2 JP2019537380A JP2019537380A JP6912583B2 JP 6912583 B2 JP6912583 B2 JP 6912583B2 JP 2019537380 A JP2019537380 A JP 2019537380A JP 2019537380 A JP2019537380 A JP 2019537380A JP 6912583 B2 JP6912583 B2 JP 6912583B2
Authority
JP
Japan
Prior art keywords
transaction
template
target
processing
blockchain
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.)
Active
Application number
JP2019537380A
Other languages
English (en)
Other versions
JP2020507840A (ja
Inventor
ホンリン チウ
ホンリン チウ
Original Assignee
アドバンスド ニュー テクノロジーズ カンパニー リミテッド
アドバンスド ニュー テクノロジーズ カンパニー リミテッド
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 アドバンスド ニュー テクノロジーズ カンパニー リミテッド, アドバンスド ニュー テクノロジーズ カンパニー リミテッド filed Critical アドバンスド ニュー テクノロジーズ カンパニー リミテッド
Publication of JP2020507840A publication Critical patent/JP2020507840A/ja
Application granted granted Critical
Publication of JP6912583B2 publication Critical patent/JP6912583B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction

Description

本出願は、コンピュータ技術の分野に関し、詳細には、トランザクション処理方法および装置に関する。
ブロックチェーン技術は、分散型台帳技術とも呼ばれる。ブロックチェーン技術は、それらの出現以来、そのような技術を使用して記憶されるデータの不変性および非中央集権化などの特徴により、広範囲にわたる注目を集めている。コンピュータ技術の連続的な発達に伴って、ブロックチェーン技術は、ますます安全なデータ記憶環境およびデータ記憶の利便性を人々に提供することになるであろう。
例示的な適用では、ブロックチェーン技術は、一般的には、トランザクションで生成されるトランザクション情報を記憶するために使用される。しかしながら、スマート・コントラクトの出現が、ブロックチェーンのサービス範囲をさらに拡大する。スマート・コントラクトは、一般的には、ブロックチェーン(またはブロックチェーンのトランザクション処理ノード)に記憶されるコードのセグメントである。スマート・コントラクトの実行条件およびトランザクション処理ロジックが、コードのセグメントに規定される。すなわち、トランザクション処理要求の場合は、スマート・コントラクトを呼び出すための条件、およびスマート・コントラクトが呼び出された後の受け取ったトランザクション処理要求の処理方法が規定される。したがって、ユーザが、スマート・コントラクトにより指定されたトランザクションを処理する必要があるとき、ユーザは、指定されたトランザクションを処理するために必要とされるトランザクション・パラメータを、ブロックチェーンのトランザクション処理ノードに送り、これによりトランザクション処理ノードは、トランザクション・パラメータが、スマート・コントラクトによって規定された実行条件を満たすと決定されるとき、トランザクション・パラメータを実行し、次いで指定されたトランザクションの処理ジョブを完了してよい。
たとえば、ユーザがスマート・コントラクトによりいくつかの指定されたトランザクションを処理する必要があるとき、ブロックチェーンのスマート・コントラクトの記憶アドレスが、トランザクション処理要求で搬送され、これによりブロックチェーンのトランザクション処理ノードが、トランザクション処理要求が実行されるとき、トランザクション処理要求からトランザクション・パラメータおよびブロックチェーンのスマート・コントラクトの記憶アドレスを決定してよい。記憶アドレスに従って、トランザクション処理ノードは、記憶アドレスに記憶されているスマート・コントラクトを呼び出し、トランザクション・パラメータがスマート・コントラクトの実行条件を満たすかどうかを決定してもよい。はいの場合、トランザクション処理ノードは、指定されたトランザクションの処理ジョブを完了するために、スマート・コントラクトに事前に規定されたトランザクション処理ロジックに従ってトランザクション・パラメータを処理する。
ブロックチェーンに記憶されたデータが不変であるという特徴により、スマート・コントラクトがブロックチェーンに記憶されると、スマート・コントラクトを変更することは不可能である。トランザクションの連続的なアップグレードにつれて、スマート・コントラクトが新しい(アップグレードされた)トランザクションの処理ジョブをサポートできない場合がある。スマート・コントラクトが新しいトランザクションの処理ジョブをサポートできるようにするには、スマート・コントラクトは、新しいトランザクションに従って再開発され、ブロックチェーンに書き直されなければならない。
したがって、トランザクション処理方法がブロックチェーンにおいてトランザクションへのアップグレードに柔軟に適応できないというブロックチェーンにおける問題を解決するためのトランザクション処理方法の差し迫った必要がある。
本出願の実施形態は、トランザクション処理方法がトランザクションへのアップグレードに柔軟に適応できないというブロックチェーンにおける問題を解決するためのトランザクション処理方法および装置を提供する。
本出願の実施形態は、トランザクション処理方法を提供し、この方法は、
トランザクション要求を受け取るステップと、
トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するステップと、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするステップと、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンに書き込むステップと
を含む。
本出願の実施形態は、トランザクション処理方法を提供し、この方法は、
トランザクション要求を受け取り、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するステップと、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするステップと、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンのターゲット・ブロックに書き込むステップと、
取得されたトランザクション情報をターゲット・ブロックに書き込むとき、ターゲット・ブロックの状態変更値を決定および記憶するステップであって、状態変更値が、ターゲット・ブロックに記録されたトランザクション情報がブロックチェーンの他のブロックに記録されたトランザクション情報と一致するかどうかをチェックするために使用される、決定および記憶するステップと
を含む。
本出願の実施形態は、トランザクション処理装置を提供し、この装置は、
トランザクション要求を受け取るように構成された受取りモジュールと、
トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するように構成された決定モジュールと、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするように構成されたテンプレート・ローディング・モジュールと、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンに書き込むように構成された処理モジュールと
を備える。
本出願の実施形態は、トランザクション処理装置を提供し、この装置は、
トランザクション要求を受け取り、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するように構成された受取りモジュールと、モジュールと、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするように構成されたテンプレート・ローディング・モジュールと、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンのターゲット・ブロックに書き込むことと、取得されたトランザクション情報をターゲット・ブロックに書き込むとき、ターゲット・ブロックの状態変更値を決定および記憶することとを行うように構成された処理モジュールであって、状態変更値が、ターゲット・ブロックに記録されたトランザクション情報がブロックチェーンの他のブロックに記録されたトランザクション情報と一致するかどうかをチェックするために使用される、処理モジュールと
を備える。
本出願の実施形態によって採用される上記で説明した少なくとも1つの技術的解決策は、以下の有利な効果を達成することができる。
本出願の実施形態では、ユーザによって送られたトランザクション要求が受け取られた後、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードすることができ、ターゲット・トランザクションは、トランザクション・テンプレートに従って処理される。ここで、トランザクション処理ノードは、トランザクション処理プロセスでユーザによって送られたトランザクション要求に従ってトランザクション要求に含まれるターゲット・トランザクションを処理することができるトランザクション・モデルをロードしてもよいので、トランザクション処理が固定され、拡張できないという現在の技術におけるブロックチェーンの限界は突破され、それによってブロックチェーンにおけるトランザクション処理をより柔軟にし、ユーザにとってブロックチェーンベースのトランザクション処理を容易にする。
本明細書で説明する添付の図面は、本出願のより良い理解を可能にし、本出願の一部を構成するために使用する。本出願の例示的な実施形態および例示的な実施形態の説明は、本出願を説明するために使用され、本出願に不適当な制限を与えない。
本出願のいくつかの実施形態によるトランザクション処理プロセスの概略図である。 本出願のいくつかの実施形態による、トランザクション・プラットフォームでトランザクション・テンプレート・インストール・パッケージをリリースするユーザの概略図である。 本出願のいくつかの実施形態によるトランザクション処理プロセスの概略図である。 本出願のいくつかの実施形態によるトランザクション処理装置の概略図である。 本出願のいくつかの実施形態によるトランザクション処理装置の概略図である。
当業者が本出願の技術的解決策をより良く理解できるように、本出願の実施形態での技術的解決策について、本出願の実施形態で添付の図面を参照しながら以下で明確にかつ余すところなく説明する。説明する実施形態は本出願の一部の実施形態にすぎず、全部ではないことは明らかである。本出願の実施形態に基づいて、当業者によって創造的な努力なしに得られる他のすべての実施形態は、本出願の範囲内に入るものとする。
図1は、以下のステップを含む、本出願のいくつかの実施形態によるトランザクション処理プロセスの概略図である。
S101:トランザクション要求を受け取る。
本出願の実施形態では、本出願の実施形態の実行エンティティが、トランザクション処理ノードであってよい。ここではトランザクション処理ノードは、ブロックチェーン処理技術を備えており、すなわち、トランザクション処理ノードは、ブロックチェーン・トランザクションを処理することができる。したがって、S101は、トランザクション処理ノードがトランザクション要求を受け取るステップと解釈されてよい。
トランザクション要求は、ユーザによってトランザクション処理ノードに、端末デバイス(ここでは端末デバイスは、モバイル端末、PC端末などと解釈されてよい)を介して送られると解釈されてよく、または、ユーザによって送られたトランザクション要求を受け取ったサーバ(サーバは、ブロックチェーン処理技術を備えており、トランザクション処理ノードとのデータ送信を行うことができてよい)によって送られると解釈されてよく、またはさらに、ブロックチェーン処理技術を備えていないサーバによって、サーバがユーザによって送られたトランザクション要求を受け取った後に、トランザクション処理ノードに送られると解釈されてよく、これは本明細書の実施形態によって限定されない。
たとえば、トランザクション処理を行うプロセスでは、ユーザが、トランザクション要求をトリガするために、対応するトランザクション・データをコンピュータ、携帯電話などの端末に入力してよい。たとえば、ユーザが振込トランザクションを行う必要があるとき、ユーザは、振込金額および振込みの受領者を端末に入力してよく、ユーザによって入力された振込金額および振込受領者、ならびに振込イニシエータ(すなわち、ユーザ)は、ユーザによって入力された振込トランザクションのトランザクション・データを構成してよい。ユーザは次いで、振込金額、振込受領者、および振込イニシエータを含むトランザクション・データをトランザクション処理ノードに搬送するトランザクション要求を送る。別の例では、ユーザがブロックチェーンにデータを記憶する必要があるとき、ユーザはデータを端末に入力してよく、データは、ユーザによって入力されたデータ記憶トランザクションのトランザクション・データであり、次いでユーザは、記憶されるデータを含むトランザクション・データをトランザクション処理ノードに搬送するトランザクション要求を送る。ユーザがトランザクション要求をトランザクション処理ノードに送る方法は、本明細書の実施形態によって限定されない。
また別の例の場合は、ユーザが指定された動作(たとえば、端末インターフェース上に表示される指定されたコントロールをクリックすることなど)を実行するのを端末が検出すると、端末は、ユーザによって端末に入力されたトランザクション・データを決定し、次いでトランザクション・データに従って対応するトランザクション要求を生成し、トランザクション要求をトランザクション処理ノードに送り、これによりトランザクション処理ノードがトランザクション要求を受け取り、その後のプロセスでトランザクション要求に含まれるターゲット・トランザクションを処理してよい。ユーザがトランザクション要求をトランザクション処理ノードに送る方法は、本明細書の実施形態によって限定されない。
本出願の実施形態でのトランザクション処理プロセスでは、ユーザが対応するトランザクション・データを端末に入力してよく、またトランザクション・データを端末上にインストールされた指定されたアプリケーションに入力してもよいことに留意されたい。対応して、ユーザによって入力されたトランザクション・データが受け取られた後、指定されたアプリケーションは、対応するトランザクション要求を生成してよい。したがって、ユーザによる指定された動作が検出される(たとえば、指定されたコントロールをクリックすることなど)と、指定されたアプリケーションは、トランザクション要求をトランザクション処理ノードに送ってよい。
S102:トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定する。
トランザクション処理ノードが、端末を介してユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプをさらに決定してよい。このアクションは、以下の目的で提供される。本出願の実施形態では、トランザクション・テンプレートが、トランザクション処理ノードに事前に記憶され、異なるトランザクション・テンプレートは、異なるトランザクション処理ジョブに対応し、したがって、トランザクション処理ノードがユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、事前に記憶されたトランザクション・テンプレートからのどのトランザクション・テンプレートが、トランザクション要求に含まれるターゲット・トランザクションを処理することができるかを決定する必要がある。トランザクション処理ノードは、一般的に、トランザクション・タイプに対応するトランザクション・テンプレートを記憶する。したがって、どのトランザクション・テンプレートがトランザクション要求に含まれるターゲット・トランザクションを処理することができるかを決定するプロセスでは、トランザクション処理ノードは、ターゲット・トランザクションのトランザクション・タイプを決定し、次いで、トランザクション・タイプとトランザクション・テンプレートとの事前に記憶された関係に従ってトランザクション・タイプに対応するトランザクション・テンプレートを決定し、さらに、その後のプロセスでトランザクション・テンプレートによりトランザクション要求に含まれるターゲット・トランザクションを処理してよい。
一例では、トランザクション処理ノードが、ユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションのトランザクション識別子を決定し、トランザクション識別子に従ってターゲット・トランザクションのトランザクション・タイプを決定してよく、トランザクション識別子は、数字の文字列であってよく、数字の文字列の一部が、ターゲット・トランザクションを表すことができるトランザクション・コードである。たとえば、トランザクション識別子#244340923では、#2がターゲット・トランザクションを表すトランザクション・コードである。トランザクション識別子はまた、他の形態であってもよい。たとえば、トランザクション要求が、「transfer type」の文字を含むとき、「transfer type」がトランザクション要求に含まれるターゲット・トランザクションのトランザクション識別子である。
本出願の実施形態によるトランザクション処理ノードに事前に記憶されるトランザクション・テンプレートは、APIにより構築され、トランザクション処理ノードに記憶されてよいことに留意されたい。
S103:トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードする。
本出願の実施形態では、様々なトランザクション・タイプに対応するトランザクション・テンプレートが、トランザクション処理ノードに事前に記憶される。したがって、トランザクション処理ノードがユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションに対応する決定されたトランザクション・タイプに従って、事前に記憶されたトランザクション・テンプレートからトランザクション・タイプに合致するトランザクション・テンプレートをロードしてよい。次いでその後のプロセスで、トランザクション処理ノードは、トランザクション・テンプレートによりターゲット・トランザクションを処理してよい。
たとえば、ユーザがトランザクション処理ノードへの振込要求(すなわち、トランザクション要求)を開始すると仮定すると、トランザクション処理ノードが振込要求を受け取った後、トランザクション処理ノードは、振込要求を分析し、振込要求に対応するトランザクション・タイプは振込トランザクションであると決定してよい。次いで、トランザクション処理ノードは、事前に記憶されたトランザクション・テンプレートから、振込トランザクション(すなわち、トランザクション・タイプ)に合致する振込テンプレートを決定し、ロードする。その後のプロセスで、トランザクション処理ノードは、振込テンプレートにより振込要求を処理する。
トランザクション処理ノードがトランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定した後、トランザクション処理ノードは、事前に構成されたトランザクション・テンプレートにはトランザクション・タイプに合致するトランザクション・テンプレートがないとわかる。すなわち、トランザクション・テンプレートのいずれも、トランザクション要求に含まれるターゲット・トランザクションを処理することができない。したがって、トランザクション処理ノードは、ユーザによって入力されたトランザクション・コードに従ってターゲット・トランザクションを処理することができるトランザクション・テンプレートを生成し、次いで生成したトランザクション・テンプレートによりターゲット・トランザクションを処理してよい。
一例では、トランザクション処理ノードが、ユーザによって送られたトランザクション要求を受け取ると、トランザクション処理ノードは、事前に構成されたトランザクション・テンプレートに、トランザクション要求に対応するトランザクション・テンプレートがないと決定する。次いで、トランザクション処理ノードはユーザに、トランザクション要求に含まれるターゲット・トランザクションを処理できないことをプロンプトしてよい。ユーザがプロンプトを見ると、ユーザは、ターゲット・トランザクションのためにトランザクション処理ノードでターゲット・トランザクションを処理するのに必要とされるトランザクション・コードをコンパイルしてよく、トランザクション処理ノードは、ユーザによって入力されたトランザクション・コードに従って、対応するトランザクション・テンプレートを生成してよい。次いで、トランザクション処理ノードは、生成されたトランザクション・テンプレートをロードし、ターゲット・トランザクションを処理してよい。
例示的な適用では、異なるトランザクション・テンプレートが読み取ることができるデータ・フォーマットは、一般的に異なる。したがって、トランザクション処理ノードが、本出願の実施形態でユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、事前に記憶されたトランザクション・テンプレートによりトランザクション要求を順次読み取ってもよい。トランザクション処理ノードが、あるトランザクション・テンプレートによりトランザクション要求を読み取ることができる(すなわち、トランザクション要求のデータ・フォーマットがそのトランザクション・テンプレートに合致する)と、トランザクション処理ノードは、その後のプロセスでそのトランザクション・テンプレートによりトランザクション要求に含まれるターゲット・トランザクションを処理してよい。
トランザクション処理ノードのデータが変更される場合があるので、トランザクション処理ノードに事前に記憶されたトランザクション・テンプレートは、更新され、調整されてよい。したがって、トランザクションが連続してアップグレートされるとき、ユーザが対応してトランザクション処理ノードでトランザクション・テンプレートをアップグレートしてよい。ユーザは、トランザクション・テンプレートがアップグレードされたトランザクションをサポートできるようにするために、トランザクション・テンプレートを再開発する必要はなく、元のトランザクション・テンプレートに基づいて更新および調整を行うだけであり、それによってトランザクション保守効率を著しく改善する。
しかしながら、ブロックチェーンに記憶されるデータは不変であるので、データを記憶するためのユーザによるブロックチェーンの使用は、データ記憶の安全性を効果的に保証することになり、それによってユーザによるその後のデータ検証に有利な検証基準を与える。一方、データの不変性は、ブロックチェーンのトランザクション処理における不便にもつながり、最も重要な問題の1つは、ブロックチェーン・トランザクション展開を現在サポートしているスマート・コントラクトが一般的にすべてブロックチェーンに記憶され、したがって、スマート・コントラクトは、トランザクションの連続的なアップグレードとともに更新されない場合があることである。スマート・コントラクトが新しいトランザクションの処理ジョブをサポートできるようにするには、ユーザは、スマート・コントラクトを再開発し、再開発されたスマート・コントラクトをブロックチェーンに書き込む必要がある。したがって、トランザクションの連続的なアップグレードは必然的に、ユーザにスマート・コントラクトを再開発し続けることを強制し、それによってユーザにはトランザクション保守での著しい不便が生じる。
本出願の実施形態では、様々なターゲット・トランザクションを処理するためのすべてのトランザクション・テンプレートが、ブロックチェーンに記憶されるのではなく、トランザクション処理ノードに事前に記憶されてよい。したがって、トランザクションがアップグレードされるとき、ユーザは、トランザクション・テンプレートがアップグレードされたトランザクションをサポートできるようにするために、トランザクション処理ノードに記憶されたトランザクション・テンプレート上で対応する更新を行うだけでよい。アップグレードされたトランザクションに適応するためにトランザクション・テンプレートを再開発する必要がなく、ユーザがスマート・コントラクトを再開発して、再開発されたスマート・コントラクトに、アップグレードされたトランザクションのトランザクション処理をサポートさせることしかできない現在の技術と比較して、トランザクション保守のコストは大幅に削減されることになる。同時に、トランザクション処理方法がトランザクション・アップグレードに柔軟に適応できないという問題は解決され、ブロックチェーンでのトランザクション処理の柔軟性は大幅に高められる。
さらに、例示的な適用では、スマート・コントラクト実行のプロセスで必要とされるシステム・リソースが、一般的に仮想マシンによって割り振られる。しかしながら、仮想マシンはサーバから分割されているので、仮想マシンは、サーバのシステム・リソースの一部を処理するにすぎない場合がある。スマート・コントラクトによって必要とされるシステム・リソースの、仮想マシンによる割振りは、スマート・コントラクトが、仮想マシンによって所有されるサーバのシステム・リソースの一部から、必要とされるシステム・リソースを取得することしかできないことを意味する。このようにして、スマート・コントラクトは、少量のシステム・リソースを取得する。しかしながら、ますます高まるトランザクション需要量に適応するために、スマート・コントラクトは、ますます増加するトランザクションへの十分なサポートを行うには仮想マシンからより多くのシステム・リソースを取得する必要があるに違いない。仮想マシン自体の性能問題(すなわち、仮想マシンは比較的少量のシステム・リソースを所有し、スマート・コントラクトに割り振られるシステム・リソースの量もまた比較的少ない)は、スマート・コントラクトがますます増加するトランザクションへの良好なサポートを行うことを不可能にし、それによってブロックチェーン・トランザクション処理効率を大きく下げ、ユーザに不便を招くことになる。
本出願の実施形態では、様々なトランザクションに対応するトランザクション・テンプレートが、トランザクション処理ノードに事前に記憶される。トランザクション処理ノードは、サーバと同じ量のシステム・リソースを所有するので、トランザクション要求を処理するためにトランザクション・テンプレートを開始するプロセスにおいて、トランザクション処理ノードは、トランザクション要求を処理するプロセスにより多くのシステム・リソースを割り振ってよい。したがって、トランザクション量の連続的な増加とともに、トランザクション処理ノードは、様々なトランザクションの処理をさらに強力にサポートし、それによってブロックチェーン・トランザクション処理効率を確保することができる。
S104:トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンに書き込む。
トランザクション処理ノードが、トランザクション・タイプに合致するトランザクション・テンプレートを決定した後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションを、トランザクション・テンプレートにより処理してよく、トランザクション・テンプレートは、事前に規定されたトランザクション処理ルールを含み、トランザクション処理ノードは、トランザクション処理ルールに従ってターゲット・トランザクションを処理してよい。
例示的な適用では、トランザクションの各タイプが、一般的にいくつかのサブトランザクションを含む。たとえば、金融トランザクションは、振込トランザクション、財務管理トランザクションなどのサブトランザクションを含む場合があり、これに基づいて、本出願の実施形態では、各トランザクション・テンプレートでのトランザクション処理ルールが、主要なタイプのトランザクションのトランザクション処理を担ってもよく、各トランザクション処理ルールが、複数の処理ルールを含み、トランザクションのタイプが異なるサブトランザクションを異なる処理ルールが対応して処理する。たとえば、金融トランザクションの場合、トランザクション処理ノードは、金融トランザクション処理を担う金融トランザクション・テンプレートを記憶してよく、金融トランザクション・テンプレートは、振込み、財務管理、および他のサブトランザクションを処理するための様々な処理ルールを含む。
したがって、本出願の実施形態では、トランザクション処理ノードが、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードした後、トランザクション処理ノードは、トランザクション・テンプレートに含まれるトランザクション処理ルールを決定してよい。次いで、トランザクション処理ノードは、トランザクション処理ルールに含まれる処理ルールから、ターゲット・トランザクションに合致する処理ルールをさらに決定し、この処理ルールによりターゲット・トランザクションを処理してよい。
たとえば、トランザクション処理ノードによって受け取られたトランザクション要求が、ユーザによって送られた振込要求であると仮定すると、トランザクション処理ノードは、トランザクション要求のトランザクション・タイプは金融であると決定してよい。次いで、トランザクション処理ノードは、事前に記憶されたトランザクション・テンプレートから金融トランザクションを処理することができるトランザクション・テンプレートを決定し、ロードしてよい。トランザクション処理ノードがトラザクション・テンプレートをロードした後、トランザクション処理ノードは、トランザクション・テンプレートに含まれるトランザクション処理ルールを決定してよい。次いで、トランザクション処理ノードは、トランザクション処理ルールに含まれる処理ルールから、振込トランザクションに合致する振込処理ルール(すなわち、上述の処理ルール)を決定し、この処理ルールにより振込トランザクションを処理してよい。
例示的な適用では、ユーザによってトラザクション処理ノードに入力されたトランザクション要求が、規定に従わないデータ・フォーマット、不正なトランザクション要求などの状況を作り出す場合がある。トランザクション処理ノードが、問題のあるこれらのトランザクション要求を処理するとき、トランザクション処理ノードの動作は影響を受ける場合があり、トランザクション処理ノードは、厳しい状況で崩壊する場合さえある。
トランザクション処理ノードの効果的な動作を確保し、トランザクション処理ノードのトランザクション処理効率を確保するために、本出願の実施形態では、トランザクション処理ノードは、決定されたトランザクション・テンプレート(トランザクション処理ノードによって受け取られたトランザクション要求を処理するために使用されるトランザクション・テンプレート)に従って受け取られたトランザクション要求をチェックしてよい。
一例では、トランザクション処理ノードが、トランザクション要求に対応するトランザクション・テンプレート(すなわち、ターゲット・トランザクションのトランザクション・タイプに対応するトランザクション・テンプレート)を決定した後、トランザクション処理ノードは、トランザクション・テンプレートからトランザクション・テンプレートに含まれるトランザクション処理ルールを決定してよく、トランザクション処理ルールは、トランザクション処理を実行するための処理ルールと、トランザクション要求をチェックするためのチェック・ルールとを含む。したがって、トランザクション処理ノードは、チェック・ルールに従ってトランザクション要求をチェックしてよい。トランザクション処理ノードが、トランザクション要求はチェック・ルールに規定されたプリセット条件を満たす(すなわち、トランザクション要求は正当および正常な要求である)と決定するとき、トランザクション処理ノードは、ターゲット・トランザクションを処理してよく、トランザクション処理ノードが、トランザクション要求はチェック・ルールに規定されたプリセット条件を満たさない(すなわち、トランザクション要求は従っていないデータ・フォーマット、不正なトランザクション要求などの問題を有する可能性がある)と決定するとき、トランザクション処理ノードは、ターゲット・トランザクションを処理せず、トランザクション要求処理が失敗するというプロンプトをユーザに返し、これによりユーザはプロンプトに従ってトランザクション処理ノードへのトランザクション要求を再び開始してよい。
トランザクション処理ノードが、トランザクション・テンプレートによりトランザクション要求の処理を完了した後、トランザクション処理ノードは、対応するトランザクション情報を取得してよい。ここではトランザクション情報は、トランザクション処理ノードがトランザクションを処理した後に取得されるトランザクション結果、トランザクション処理プロセス全体を示すためのトランザクション記録、またはトランザクション要求に含まれるトランザクション・データであってよい。トランザクション処理ノードは、その後トランザクション情報をブロックチェーンに書き込んでよい。このようにして、ユーザは、その後ブロックチェーンのトランザクション情報を検索し、次いでトランザクション情報でのデータ検証などの動作を行ってよい。
本出願の実施形態では、トランザクション処理ノードに事前に記憶されたトランザクション・テンプレートは、様々なトランザクションを対象とするものであってよく、例示的な適用では、ブロックチェーンを含むトランザクションは、主として以下の4つのタイプに分けられてよい。
I.トレーシング・トランザクション、このトランザクションは、指定されたデータ片の転送経路を詳細に記録し、ブロックチェーンに記録された指定されたデータ片の転送経路を通して、すなわち、指定されたデータ片のソースをたどって、ユーザが指定されたデータ片の元の所有者を決定できるようにする。
II.認証トランザクション、このトランザクションは、ブロックチェーンに記憶されたデータの不変性を使用し、指定されたデータの後の検証のために、または指定されたデータによる他のデータの検証のために、指定されたデータをブロックチェーンに記憶する。
III.スマート・コントラクトに基づくトランザクション、このトランザクションは、ブロックチェーンでスマート・コントラクトを実行することによって財務管理製品からユーザに定期的に利益を返すことなど、現在の技術のスマート・コントラクトを使用して実装される特定のトランザクションである。
IV.交換トランザクション、このトランザクションは、ブロックチェーンを介したユーザ間の相互トランザクションを実現し、トランザクション・プロセスにおけるトランザクション詳細をブロックチェーンに記録する。
上記で説明した4つのタイプのトランザクションに関して、これらの4つのタイプのトランザクションを処理することができるトランザクション・テンプレートが、本出願の実施形態ではトランザクション処理ノードに事前に記憶される。したがって、トランザクション処理ノードがこれらの4つのタイプのトランザクションに対するトランザクション要求を受け取った後、トランザクション処理ノードは、4つのタイプのトランザクション要求に含まれるターゲット・トランザクションを処理するために、事前に記憶された4つのタイプのトランザクション・テンプレートをロードしてよく、4つのタイプのトランザクション要求は、それぞれ、追跡テンプレート、認証テンプレート、契約テンプレート、および交換テンプレートであってよい。
本出願の実施形態のトランザクション処理プロセスをさらに説明するために、これらの4つのタイプのトランザクション要求のトランザクション処理プロセスについて、以下で詳細に説明する。
トランザクション処理ノードがユーザによって送られた追跡データ要求を受け取ると、トランザクション処理ノードは、追跡データ要求に含まれる追跡トランザクション識別子に従って、追跡トランザクション識別子に対応する追跡トランザクション・タイプを決定してよく、次いで、トランザクション処理ノードは、追跡トランザクション・タイプに従って、事前に記憶されたトランザクション・テンプレートから追跡トランザクション・タイプに合致する追跡モデルを決定し、ロードしてよい。次いで、追跡テンプレートをアクティブ化することによって、トランザクション処理ノードは、追跡データ要求に含まれる追跡トランザクションを処理する。
トランザクション処理ノードが追跡テンプレートにより追跡トランザクションを処理するプロセスでは、トランザクション処理ノードは、追跡トランザクション・タイプに対応する追跡トランザクション処理ルールを決定し、次いで、分析により、追跡データ、追跡データ受領者のアドレス、および追跡データ要求に含まれる追跡データ送信者のアドレスを取得するために追跡トランザクション処理ルールを実行してよい。その後、トランザクション処理ノードは、追跡データを追跡データ受領者にさらに送り、対応する追跡データ転送情報を生成してよい。次いで、トランザクション処理ノードは、転送情報をブロックチェーンに書き込み、ユーザがその後、ブロックチェーンに記憶された転送情報により追跡データの転送経路を決定できるようにする。
認証トランザクションに関して、トランザクション処理ノードが、ユーザによって送られた認証データ要求を受け取ると、トランザクション処理ノードは、認証データ要求に対応する認証トランザクション・タイプを決定し、事前に記憶されたトランザクション・テンプレートから認証トランザクション・タイプに合致する認証テンプレートをロードしてよい。トランザクション処理ノードは、認証テンプレートから認証トランザクション・タイプに対応する認証トランザクション処理ルールを決定し、分析により、認証トランザクション処理ルールを通して、認証データ要求からユーザによって要求されるブロックチェーンに書き込まれる認証データを取得し、次いで認証データをブロックチェーンに書き込んでよい。
本出願の実施形態では、トランザクション処理ノードは、ブロックチェーンに記憶されたスマート・コントラクトによりトランザクションを実行してもよく、すなわち、スマート・コントラクトにより実行されるトランザクションに対応する契約テンプレート(すなわち、トランザクション・テンプレート)が、トランザクション処理ノードに事前に記憶されてよい。次いで、トランザクション処理ノードがユーザによって送られた契約データ要求を受け取ると、トランザクション処理ノードは、契約データ要求に対応する契約トランザクション・タイプを決定し、契約トランザクション・タイプに従って、事前に記憶されたトランザクション・テンプレートから契約トランザクション・タイプに対応する契約テンプレートを決定してよい。ブロックチェーンは、契約テンプレートから契約トランザクション・タイプに合致する契約トランザクション処理ルールをさらに決定し、契約データ要求に含まれるコントラクト・アドレスおよびトランザクション・パラメータを取得するために、契約トランザクション処理ルールを実行することにより分析してよく、コントラクト・アドレスは、ブロックチェーンのスマート・コントラクトの記憶アドレスである。その後、トランザクション処理ノードは、コントラクト・アドレスでブロックチェーンのスマート・コントラクトを検索し、次いで決定されたトランザクション・パラメータをスマート・コントラクトに送信し、これによりスマート・コントラクトがトランザクション・パラメータを自動的に実行し、対応するトランザクション結果(すなわち、トランザクション情報)をトランザクション処理ノードに返してよい。トランザクション処理ノードが、スマート・コントラクトによって返されたトランザクション結果を受け取った後、トランザクション処理ノードは、トランザクション結果をユーザに表示し、同時に、トランザクション結果についてデータ検証を行うことなどのユーザによる後の動作に備えて、トランザクション結果をブロックチェーンに書き込んでよい。
交換トランザクションに関して、トランザクション処理ノードが、ユーザによって送られたトランザクション要求を受け取ると、トランザクション処理ノードは、事前に記憶されたトランザクション・テンプレートからトランザクション要求を処理することができる交換テンプレートを決定し、交換テンプレートをロードすることによってトランザクション要求に含まれる交換トランザクションを処理してよく、トランザクション処理ノードはまず、決定された交換トランザクション・タイプに従って、交換テンプレートから交換トランザクション・タイプに合致する交換トランザクション処理ルールを決定してよい。交換トランザクション処理ルールを通して、トランザクション処理ノードは、分析により、トランザクション・イニシエータ、トランザクション受領者、トランザクション金額など、トランザクション要求に関わる情報を取得し、交換トランザクション処理ルールを実行することによってトランザクション・イニシエータのアカウントから対応するトランザクション金額の引き算を行い、次いで、このトランザクション金額を、トランザクション受領者のアカウントでのトランザクション処理に移す。このプロセスでは、トランザクション処理ノードは、このトランザクションのトランザクション詳細(すなわち、トランザクション情報)を取得してよい。ユーザがその後のプロセスでブロックチェーンのトランザクション詳細を見るために、およびトランザクション詳細のトランザクション証明がその後のプロセスでユーザに提供されるように、トランザクション処理ノードは、ブロックチェーンにトランザクション詳細を書き込んでよい。
本出願の実施形態では、トランザクション処理ノードは、他のトランザクションのトランザクション処理をサポートしてもよく、ユーザは、トランザクション処理ノードによってトランザクションの処理を行うために、所望のトランザクションのトランザクション・テンプレートをトランザクション処理ノードにロードするだけでよい。
上記で説明した方法から、様々なターゲット・トランザクションを処理するためのトランザクション・テンプレートが、ブロックチェーンではなくトランザクション処理ノードに事前に記憶されることがわかる。したがって、トランザクションがアップグレードされるとき、ユーザは、トランザクション・テンプレートがアップグレードされたトランザクションをサポートできるようにするために、トランザクション処理ノードに記憶されたトランザクション・テンプレート上で対応する更新を行うだけでよい。アップグレードされたトランザクションに適応するためにトランザクション・テンプレートを再開発する必要がなく、ユーザがスマート・コントラクトを再開発して、再開発されたスマート・コントラクトに、アップグレードされたトランザクションのトランザクション処理をサポートさせることしかできない現在の技術と比較して、トランザクション保守のコストは大幅に削減されることになる。
本出願の実施形態では、ユーザは、すべてのトランザクション・テンプレートをプリコンパイルし、トランザクション・テンプレートをトランザクション処理ノードに入力してよい。対応して、トランザクション処理ノードがユーザによって入力されたトランザクション・テンプレートを受け取った後、トランザクション処理ノードは、トランザクション処理ノードに対するトランザクション・テンプレートを記憶してよい。その後のプロセスにおいて、トランザクション処理ノードは、これらのトランザクション・テンプレートをロードすることによって、受け取ったトランザクション要求を処理してよい。
本出願の実施形態では、ユーザは、すべてのトランザクション・テンプレートをトランザクション・プラットフォームにパッケージ化およびリリースし、これによりトランザクション・テンプレート・インストール・パッケージを必要としている他のユーザが対応するトランザクション・テンプレート・インストール・パッケージをトランザクション・プラットフォームからダウンロードし、トランザクション・テンプレート・インストール・パッケージをローカル・トランザクション処理ノードに記憶してよい。ローカル・トランザクション処理ノードがトランザクション・テンプレート・インストール・パッケージをロードした後、トランザクション処理ノードは、図2に示すように、トランザクション・テンプレートに対応するトランザクションを処理する能力を持つ。
図2は、本出願のいくつかの実施形態による、トランザクション・プラットフォームでトランザクション・テンプレート・インストール・パッケージをリリースするユーザの概略図である。
図2では、ユーザAは、コンパイル言語を使用してトランザクション・テンプレートをコンパイルし、トランザクション・プラットフォームにアップロードするために、トランザクション・テンプレートをそれぞれパッケージ化してよい。トランザクション・プラットフォームが、ユーザAによってアップロードされたトランザクション・テンプレート・インストール・パッケージを受け取った後、トランザクション・プラットフォームは、他のユーザがダウンロードし、使用するためにトランザクション・テンプレート・インストール・パッケージをリリースしてよい。トランザクション・テンプレート・インストール・パッケージは、他のユーザによってアップロードされる場合もあり、ユーザは、ユーザのそれぞれにコンパイルされたトランザクション・テンプレート・インストール・パッケージを、ユーザが使用するためにトランザクション・プラットフォーム上で共有してよい。
例示的な適用では、スマート・コントラクトが一般的に、ユーザ自身によってコンパイルされ、ブロックチェーンに書き込まれることに留意されたい。ユーザが悪意のあるスマート・コントラクトをブロックチェーンにコンパイルし、書き込む場合、スマート・コントラクトは、他のユーザによるスマート・コントラクトに基づくトランザクション処理に不都合および損失をもたらす可能性がある。
上記で説明した状況を回避するために、本出願の実施形態では、トランザクション・プラットフォームは、ユーザによってアップロードされるトランザクション・テンプレート・インストール・パッケージをチェックしてよい。ユーザによってアップロードされたトランザクション・テンプレート・インストール・パッケージが悪意のあるコードを含むことがわかると、トランザクション・テンプレート・インストール・パッケージはリリースされることはなく、それによって、トランザクション・テンプレート・インストール・パッケージをダウンロードするための良い環境をユーザに提供する。
本出願の実施形態は、トランザクション処理方法をさらに提供する。図3は、本出願のいくつかの実施形態によるトランザクション処理方法の概略図である。
トランザクション処理ノードが、トランザクション要求を受け取り、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定し、トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードし、トランザクション・テンプレートに従ってターゲット・トランザクションをさらに処理し、処理から取得されたトランザクション情報をブロックチェーンのターゲット・ブロックに書き込み、取得されたトランザクション情報をターゲット・ブロックに書き込むとき、ターゲット・ブロックの状態変更値を決定および記憶し、状態変更値は、ターゲット・ブロックに記録されたトランザクション情報がブロックチェーンの他のブロックに記録されたトランザクション情報と一致するかどうかをチェックするために使用される。
さらに、ターゲット・ブロックの状態変更値を決定および記録することが、
取得されたトランザクション情報をターゲット・ブロックに書き込んだ後、ターゲット・ブロックのチェック値を計算することと、チェック値をターゲット・ブロックの状態変更値として決定することと、状態変更値をブロックチェーンに記憶することと
を含む。
すなわち、トランザクション情報が異なるブロックに書き込まれるとき、ブロックの変更値が計算により決定されてよい。このようにして、異なるブロックの変更値は、マークル木(Merkle tree)などの木構造に順次記憶され、次いで、ブロックチェーンの異なるブロックに記録されたデータが一致しているかどうかが、マークル木のルート・ノードのハッシュ値により決定されてよい。
本出願の実施形態によるブロックチェーンは、ビットコイン(Bitcoin)・ブロックチェーン、イーサリアム(Ethereum)・ブロックチェーン、ライトコイン(Litecoin)・ブロックチェーンなどのブロックチェーンであってよい。
トランザクション処理ノードが、決定されたトランザクション・テンプレートにより、ユーザによって望まれるターゲット・トランザクション(すなわち、ユーザによって送られたトランザクション要求に含まれるターゲット・トランザクション)の処理を完了した後、トランザクション処理ノードは、ロードされたトランザクション・モデルをアップロードし、それによってトランザクション処理ノードのメモリ空間を節約してよいことにさらに留意されたい。代替的に、トランザクション処理ノードがターゲット・トランザクションの処理を完了した後、トランザクション処理ノードは、トランザクション・テンプレートをスリープにし、トランザクション・テンプレートに対応するトランザクション要求が後で受け取られた後、トランザクション要求を処理するために、トランザクション・テンプレートを再アクティブ化してもよい。
本出願の実施形態では、様々なターゲット・トランザクションを処理するためのすべてのトランザクション・テンプレートが、ブロックチェーンに記憶されるのではなく、トランザクション処理ノードに事前に記憶される。したがって、トランザクションがアップグレードされるとき、ユーザは、トランザクション・テンプレートがアップグレードされたトランザクションをサポートできるようにするために、トランザクション処理ノードに記憶されたトランザクション・テンプレート上で対応する更新を行うだけでよい。アップグレードされたトランザクションに適応するためにトランザクション・テンプレートを再開発する必要がなく、ユーザがスマート・コントラクトを再開発して、再開発されたスマート・コントラクトに、アップグレードされたトランザクションのトランザクション処理をサポートさせることしかできない現在の技術と比較して、トランザクション保守のコストは大幅に削減されることになる。同時に、トランザクション処理方法がトランザクション・アップグレードに柔軟に適応できないという問題は解決され、ブロックチェーンでのトランザクション処理の柔軟性は大幅に高められる。
さらに、トランザクション処理ノードが事前に記憶されたトランザクション・テンプレートによりトランザクション処理を行うプロセスでは、トランザクション・テンプレートによりターゲット・トランザクションを処理するために必要とされるすべてのシステム・リソースが、トランザクション処理ノード自体によって割り振られ、トランザクション処理ノードは、ターゲット・トランザクションを処理するためにトランザクション処理ノードのすべてのシステム・リソースを使用してよく、これは、スマート・コントラクト実行のプロセスで仮想マシンによってコールされるシステム・リソースが不足しているという現在の技術の問題を効果的に回避し、ブロックチェーン・トランザクション処理効率を大幅に向上させ、ユーザのトランザクション処理を容易にする。
本出願の実施形態では、トランザクション処理のプロセスで、ユーザが、対応するトランザクション要求をトランザクション処理ノードに入力してよい。トランザクション処理ノードがトランザクション要求を受け取った後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定し、トランザクション・タイプに合致するトランザクション・テンプレートをロードし、トランザクション・テンプレートによりターゲット・トランザクションを処理し、トランザクション処理ノードは、ブロックチェーン・トランザクションを処理することができる端末、ブロックチェーン・トランザクションを処理するためのサーバ、またはブロックチェーン・トランザクションを処理するためのクライアントもしくはアプリケーションであってよい。
上記で説明したのは、本出願の実施形態によるトランザクション処理方法である。同じ概念に基づいて、本出願の実施形態は、図4に示すように、トランザクション処理装置をさらに提供する。
図4は、本出願のいくつかの実施形態によるトランザクション処理装置の概略図であり、この装置は、
トランザクション要求を受け取るように構成された受取りモジュール401と、
トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するように構成された決定モジュール402と、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするように構成されたテンプレート・ローディング・モジュール403と、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンに書き込むように構成された処理モジュール404と
を備える。
決定モジュール402は、ターゲット・トランザクションのトランザクション識別子を決定し、トランザクション識別子に従って処理されるトランザクションのトランザクション・タイプを決定するように構成される。
テンプレート・ローディング・モジュール403は、構成されたトランザクション・テンプレートからトランザクション・タイプに合致するトランザクション・テンプレートを決定し、トランザクション・テンプレートをロードするように構成される。
テンプレート・ローディング・モジュール403は、構成されたトランザクション・テンプレートにトランザクション・タイプに合致するトランザクション・テンプレートがない場合、トランザクション・タイプに合致するトランザクション・テンプレートを生成し、生成されたトランザクション・テンプレートをロードするように構成される。
処理モジュール404は、トランザクション・テンプレートに含まれるトランザクション処理ルールに従って、ターゲット・トランザクションを処理するように構成される。
処理モジュール404は、ターゲット・トランザクションに対応するトランザクション・テンプレート中のトランザクション処理ルールを決定し、トランザクション処理ルールに従ってターゲット・トランザクションを処理するように構成される。
処理モジュール404は、トランザクション処理ルールに含まれるチェック・ルールを決定することと、トランザクション要求がチェック・ルールに従ってプリセット条件を満たすかどうかをチェックすることと、トランザクション要求がチェック・ルールに従ってプリセット条件を満たす場合、トランザクション処理ルール中の処理ルールに従ってターゲット・トランザクションを処理することと、トランザクション要求がチェック・ルールに従ってプリセット条件を満たさない場合、ターゲット・トランザクション処理が失敗することをプロンプトすることとを行うように構成される。
テンプレート・ローディング・モジュール403は、決定されたトランザクション・タイプが追跡トランザクション・タイプである場合、追跡トランザクション・タイプに対応する追跡テンプレートから、追跡トランザクション・タイプに対応する追跡トランザクション処理ルールを決定するように構成され、
処理モジュール404は、分析により、追跡トランザクション処理ルールに基づいて、追跡データ、追跡データ要求に含まれる追跡データの受領者および送信者のデータを取得することと、送信者から受領者に追跡データを転送することと、対応する転送情報を生成することと、転送情報をブロックチェーンに書き込むこととを行うように構成される。
テンプレート・ローディング・モジュール403は、決定されたトランザクション・タイプが認証トランザクション・タイプである場合、認証トランザクション・タイプに対応する認証テンプレートから、認証トランザクション・タイプに対応する認証トランザクション処理ルールを決定するように構成され、
処理モジュール404は、分析により、認証トランザクション処理ルールに基づいて、認証データ要求に含まれる認証データを取得することと、認証データをブロックチェーンに書き込むこととを行うように構成される。
テンプレート・ローディング・モジュール403は、決定されたトランザクション・タイプが契約トランザクション・タイプである場合、契約トランザクション・タイプに対応する契約トランザクション・テンプレートから、契約トランザクション・タイプに対応する契約トランザクション処理ルールを決定するように構成され、
処理モジュール404は、分析により、契約トランザクション処理ルールに基づいて、契約データ要求に含まれるコントラクト・アドレスおよびトランザクション・パラメータを取得することと、コントラクト・アドレスに従って、トランザクション・パラメータをコントラクト・アドレスに対応するスマート・コントラクトに送信し、これによりスマート・コントラクトがトランザクション・パラメータを実行し、対応するトランザクション結果を返すことと、受け取ったトランザクション結果をブロックチェーンに書き込むこととを行うように構成される。
テンプレート・ローディング・モジュール403は、決定されたトランザクション・タイプが交換タイプである場合、交換タイプに対応する交換テンプレートから、交換タイプに対応する交換処理ルールを決定するように構成され、
処理モジュール404は、分析により、交換処理ルールに基づいて、トランザクション要求に含まれるトランザクション・イニシエータ・アカウント、トランザクション金額、およびトランザクション受領者アカウントを取得することと、トランザクション・イニシエータ・アカウントからトランザクション金額を差し引くことと、トランザクション金額をトランザクション受領者アカウントに移してトランザクション詳細を取得することと、トランザクション詳細をブロックチェーンに書き込むこととを行うように構成される。
本出願の実施形態では、トランザクション処理ノードがユーザによって送られたトランザクション要求を受け取った後、トランザクション処理ノードは、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードし、トランザクション・テンプレートによりターゲット・トランザクションを処理してよい。ここでは、様々なターゲット・トランザクションを処理するためのすべてのトランザクション・テンプレートが、ブロックチェーンに記憶されるのではなく、トランザクション処理ノードに事前に記憶される。したがって、トランザクションがアップグレードされるとき、ユーザは、トランザクション・テンプレートがアップグレードされたトランザクションをサポートできるようにするために、トランザクション処理ノードに記憶されたトランザクション・テンプレート上で対応する更新を行うだけでよい。アップグレードされたトランザクションに適応するためにトランザクション・テンプレートを再開発する必要がなく、ユーザがスマート・コントラクトを再開発して、再開発されたスマート・コントラクトに、アップグレードされたトランザクションのトランザクション処理をサポートさせることしかできない現在の技術と比較して、トランザクション保守のコストは大幅に削減されることになる。同時に、トランザクション処理方法がトランザクション・アップグレードに柔軟に適応できないという問題は解決され、ブロックチェーンでのトランザクション処理の柔軟性は大幅に高められる。
さらに、トランザクション処理ノードが事前に記憶されたトランザクション・テンプレートによりトランザクション処理を行うプロセスでは、トランザクション・テンプレートによりターゲット・トランザクションを処理するために必要とされるすべてのシステム・リソースが、トランザクション処理ノード自体によって割り振られ、トランザクション処理ノードは、ターゲット・トランザクションを処理するためにトランザクション処理ノードのすべてのシステム・リソースを使用してよく、これは、スマート・コントラクト実行のプロセスで仮想マシンによってコールされるシステム・リソースが不足しているという現在の技術の問題を効果的に回避し、ブロックチェーン・トランザクション処理効率を大幅に向上させ、ユーザのトランザクション処理を容易にする。
同じ概念に基づいて、本出願の実施形態は、図5に示すように、トランザクション処理装置をさらに提供する。
図5は、本出願のいくつかの実施形態によるトランザクション処理装置の概略図であり、この装置は、
トランザクション要求を受け取り、トランザクション要求に含まれるターゲット・トランザクションのトランザクション・タイプを決定するように構成された受取りモジュール501と、
トランザクション・タイプに従って、トランザクション・タイプに合致するトランザクション・テンプレートをロードするように構成されたテンプレート・ローディング・モジュール502と、
トランザクション・テンプレートに従ってターゲット・トランザクションを処理し、処理から取得されたトランザクション情報をブロックチェーンのターゲット・ブロックに書き込むことと、取得されたトランザクション情報をターゲット・ブロックに書き込むとき、ターゲット・ブロックの状態変更値を決定および記憶することとを行うように構成された処理モジュール503であって、状態変更値は、ターゲット・ブロックに記憶されたトランザクション情報がブロックチェーンの他のブロックに記録されたトランザクション情報と一致するかどうかをチェックするために使用される、処理モジュール503と
を備える。
本出願のいくつかの他の実施形態では、処理モジュール503がターゲット・ブロックの状態変更値を決定および記憶することは、
取得されたトランザクション情報をターゲット・ブロックに書き込んだ後、ターゲット・ブロックのチェック値を計算することと、
チェック値をターゲット・ブロックの状態変更値として決定することと、
状態変更値をブロックチェーンに記憶することと
を含む。
1990年代においては、技術の改善は、ハードウェア改善(たとえば、ダイオード、トランジスタ、スイッチなどの回路構造の改善)、またはソフトウェア改善(方法のフローの改善)に明らかに区別することができる。しかしながら、技術開発とともに、多くの現在の方法フローの改善は、ハードウェア回路構造の直接的改善と考えられてよい。設計者は、ほとんどの場合、改善された方法フローをハードウェア回路にプログラミングすることによって対応するハードウェア回路構造を得る。したがって、方法フローの改善がハードウェア・モジュールで実現できないと結論付けることはできない。たとえば、プログラマブル論理デバイス(PLD)(たとえば、フィールド・プログラマブル・ゲート・アレイ(FPGA))は、集積回路の論理関数が、デバイスをプログラミングすることによりユーザによって決定される集積回路である。設計者は、PLDの1つにデジタル・システムを「組み込む」ために、チップ製造業者に専用ICチップの設計および製造を依頼することなく、設計者自身でプログラムを作ってよい。さらに現在、このタイプのプログラミングは、たいてい、ICチップを手動で製造するのではなく、「論理コンパイラ」ソフトウェアにより実装されている。論理コンパイラ・ソフトウェアは、プログラム開発と書き込みに使用されるソフトウェア・コンパイラと同様であり、コンパイルより前にソース・コードを書き込むために特定のプログラミング言語が使用されなければならず、これは、ハードウェア記述言語(HDL)と呼ばれる。ABEL(Advanced Boolean Expression Language)、AHDL(Alteraハードウェア記述言語)、Confluence、CUPL(コーネル大学プログラミング言語)、HDCal、JHDL(Java(登録商標)ハードウェア記述言語)、Lava、Lola、MyHDL、PALASM、RHDL(Rubyハードウェア記述言語)など、1つだけでなく、多くのタイプのHDLがある。現在、最も一般的に使用されるものは、VHDL(Very−High−Speed Integrated Circuit Hardware Description Language:超高速集積回路ハードウェア記述言語)およびVerilogを含む。方法フローで少しの論理プログラムを実行し、方法フローをICにプログラムするために上記のHDLを使用することによって論理方法を実装するためのハードウェア回路を取得することが容易であることもまた、当業者は理解するであろう。
コントローラが任意の適切な方法で実装されてよい。たとえば、コントローラは、たとえば、マイクロプロセッサまたはプロセッサの形態、ならびに、(マイクロ)プロセッサによって実行できるコンピュータ可読プログラム・コード(たとえば、ソフトウェアまたはファームウェア)を記憶するコンピュータ可読媒体、論理ゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブル論理コントローラ、および組込みマイクロコントローラの形態であってよい。コントローラの例は、限定はしないが、以下のマイクロコントローラ、すなわちARC 625D、Atmel AT91SAM、Microchip PIC18F26K20、およびSilicone Labs C8051F320を含む。メモリ・コントローラが、メモリの制御論理の一部としてさらに実装される場合がある。コントローラが純粋なコンピュータ可読プログラム・コードの形で実装されることに加えて、コントローラが論理ゲート、スイッチ、ASIC、プログラマブル論理コントローラ、組込みマイクロコントローラなどの形態で同じ機能を実装できるように方法のステップで論理プログラミングを実行することが実現可能であることもまた、当業者は理解するであろう。したがって、そのようなコントローラは、ハードウェア部分と考えられてよく、コントローラに含まれ、様々な機能を実現するように構成されたデバイスは、ハードウェア部分の内部の構造体と考えられてもよい。代替的に、様々な機能を実現するように構成されたデバイスは、方法を実装するソフトウェア・モジュールとハードウェア部分の内部の構造体の両方と考えられてもよい。
上記の実施形態で説明したシステム、装置、モジュール、またはユニットは、コンピュータ・チップもしくはエンティティによって実装されることがあり、またはある機能を有する製品によって実装されることがある。一般的な実装デバイスはコンピュータである。一例では、コンピュータは、たとえば、パーソナル・コンピュータ、ラップトップ・コンピュータ、携帯電話、カメラ電話、スマート・フォン、携帯情報端末、メディア・プレーヤ、ナビゲーション・デバイス、電子メール・デバイス、ゲーム機、タブレット・コンピュータ、ウェアラブル・デバイス、またはこれらのデバイスのいずれかのデバイスの組合せであることがある。
説明の便宜上、上記のデバイスは、説明のための機能に従って様々なユニットに分割される。本出願が実装されるとき、ユニットの機能は、ソフトウェアおよび/またはハードウェアの1つまたは複数の部分に実装される場合がある。
本発明の実施形態は、方法、システム、またはコンピュータ・プログラム製品として提供される場合があることは、当業者には理解されよう。したがって、本発明は、完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアを組み合わせた実施形態として実装される場合がある。さらに、本発明は、コンピュータ使用可能プログラム・コードを含む1つまたは複数のコンピュータ使用可能記憶媒体(限定はしないが、磁気ディスク・メモリ、CD−ROM、光メモリなどを含む)に実装されるコンピュータ・プログラム製品の形態である場合がある。
本発明は、本発明の実施形態による、方法、デバイス(システム)、およびコンピュータ・プログラム製品のフローチャートおよび/またはブロック図を参照しながら説明される。フローチャートおよび/またはブロック図中の各プロセスおよび/またはブロック、ならびにフローチャートおよび/またはブロック図中のプロセスおよび/またはブロックの組合せを実施するために、コンピュータ・プログラム命令が使用されてよいことを理解されたい。これらのコンピュータ・プログラム命令は、汎用コンピュータ、専用コンピュータ、組込みプロセッサ、または機械を生成するための他のプログラマブル・データ処理デバイスのプロセッサに提供されてよく、これにより他のプログラマブル・データ処理デバイスのコンピュータまたはプロセッサによって実行される命令が、フローチャート中の1つもしくは複数のプロセスにおいておよび/またはブロック図中の1つもしくは複数のブロックにおいて指定される機能を実装するための装置を生み出す。
これらのコンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル・データ処理デバイスに特定の方法で動作するよう命令することができるコンピュータ可読メモリに記憶されてもよく、これによりコンピュータ可読メモリに記憶された命令が、命令装置を含む製品を生み出す。命令装置は、フローチャート中の1つもしくは複数のプロセスにおいておよび/またはブロック図中の1つもしくは複数のブロックにおいて指定される機能を実装する。
これらのコンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル・データ処理デバイスにロードされてもよく、これにより一連の動作ステップが、コンピュータまたは他のプログラマブル・デバイス上で行われ、それによってコンピュータ実装処理を生み出す。したがって、コンピュータまたは他のプログラマブル・デバイス上で実行される命令は、フローチャートの1つもしくは複数のプロセスにおいておよび/またはブロック図の1つもしくは複数のブロックにおいて指定される機能を実装するためのステップを提供する。
一般的な構成では、コンピュータ・デバイスは、1つまたは複数のプロセッサ(CPU)と、入力/出力インターフェースと、ネットワーク・インターフェースと、メモリとを含む。
メモリは、揮発性メモリ、ランダム・アクセス・メモリ(RAM)、および/または不揮発性メモリ、たとえば、読取り専用メモリ(ROM)もしくはフラッシュRAMなどのコンピュータ可読媒体を含んでよい。メモリは、コンピュータ可読媒体の一例である。
コンピュータ可読媒体は、任意の方法または技術により情報記憶を実装することができる永続的、揮発性、可動型、および固定型の媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラム・モジュール、または他のデータであってよい。コンピュータの記憶媒体の例は、限定はしないが、相変化ランダム・アクセス・メモリ(PRAM)、スタティック・ランダム・アクセス・メモリ(SRAM)、ダイナミック・ランダム・アクセス・メモリ(DRAM)、他のタイプのランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュ・メモリもしくは他のメモリ技術、コンパクト・ディスク読取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)もしくは他の光学メモリ、カセット、カセットおよびディスク・メモリもしくは他の磁気メモリ・デバイス、または、計算デバイスがアクセス可能な情報を記憶するために使用することができる任意の他の非伝送媒体を含む。本明細書での定義によれば、コンピュータ可読媒体は、変調されたデータ信号および搬送波などの一時的な媒体を含まない。
「含む」、「備える」、またはこれらの用語の他のどんな異形も、非排他的包含を含むよう意図され、一連の要素を含むプロセス、方法、商品、もしくはデバイスが、これらの要素を含むだけでなく、明確に列挙されていない他の要素も含む、またはプロセス、方法、商品、もしくはデバイスに固有の要素をさらに含むようにすることにさらに留意されたい。さらなる制限がないとき、「1つの・・・を備える」という記載によって定義される要素は、追加の同一の要素をさらに備えることから、上記の要素を備えるプロセス、方法、商品、またはデバイスを除外しない。
本出願の実施形態は、方法、システム、またはコンピュータ・プログラム製品として提供される場合があることは、当業者には理解されよう。したがって、本出願は、完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアを組み合わせた実施形態として実装される場合がある。さらに、本出願は、コンピュータ使用可能プログラム・コードを含む1つまたは複数のコンピュータ使用可能記憶媒体(限定はしないが、磁気ディスク・メモリ、CD−ROM、光メモリなどを含む)に実装されるコンピュータ・プログラム製品の形態である場合がある。
本出願は、プログラム・モジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の通常の文脈で説明されてよい。一般に、プログラム・モジュールは、特定のタスクを実行するまたは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本出願は、分散コンピューティング環境で実施される場合もある。これらの分散コンピューティング環境では、通信ネットワークを介して接続されたリモート処理デバイスが、タスクを実行する。分散型コンピューティング環境では、プログラム・モジュールが、記憶デバイスを含む、ローカルおよびリモートのコンピュータ記憶媒体にあってよい。
本明細書の実施形態は、各実施形態が他の実施形態との差に焦点を当てて、漸進的に説明され、実施形態は、同一または同様の部分を相互に参照される場合がある。具体的には、システム実施形態は、実質的に方法実施形態と同様であるので、比較的単純な方法で説明される。方法実施形態の説明は、関連する部分を参照される場合がある。
上述の説明は、本出願の実施形態にすぎず、本出願を限定するために使用されない。当業者には、本出願は、様々な改変および変更を有する可能性がある。本出願の趣旨および原理内で行われるいかなる修正、均等物との置換、または改良も、本出願の特許請求に包含されるものとする。

Claims (5)

  1. プロセッサによって実行されると、前記プロセッサに、
    スマート・コントラクト・トランザクション・タイプであるターゲット・トランザクションを実行するためにトランザクション要求を受け取るステップと、
    ブロックチェーンに対応する複数の構成されたトランザクション・テンプレートに前記スマート・コントラクト・トランザクション・タイプに合致するトランザクション・テンプレートがあるか否かを決定するステップと、
    前記複数の構成されたトランザクション・テンプレートに前記スマート・コントラクト・トランザクション・タイプに合致するトランザクション・テンプレートがあると判断した場合、前記ターゲット・トランザクションの前記スマート・コントラクト・トランザクション・タイプに合致するトランザクション・テンプレートをロードするステップと、又は、前記複数の構成されたトランザクション・テンプレートに前記スマート・コントラクト・タイプに合致するトランザクション・テンプレートがないと判断した場合、前記トランザクション・テンプレートとしてスマート・コントラクト・トランザクション・テンプレートを生成するステップと、
    前記トランザクション・テンプレートから前記スマート・コントラクト・トランザクション・タイプに合致するスマート・コントラクト・トランザクション処理ルールを決定するステップと、
    スマート・コントラクト・アドレスであって、前記スマート・コントラクトは前記ブロックチェーンに記憶されるスマート・コントラクト・アドレスと前記トランザクション要求に含まれる1つ又は複数のトランザクション・パラメータを取得するためのスマート・コントラクト・トランザクション処理ルールに基づく前記トランザクション要求の分析と、
    前記1つ又は複数のトランザクション・パラメータを実行し、トランザクション結果を出力するために、前記スマート・コントラクト・アドレスに従って、前記スマート・コントラクトを呼び出すことによって、
    前記トランザクション・テンプレートに従って前記ターゲット・トランザクションを処理するステップと、
    記トランザクション結果を前記ブロックチェーンに書き込むステップと、
    を含む、動作を実行させる命令を格納する非一時的なコンピュータ可読記憶媒体。
  2. 前記トランザクション・テンプレートロードするステップが、
    前記ターゲット・トランザクションのトランザクション識別子を決定するステップと、
    前記トランザクション識別子に従って、前記ターゲット・トランザクションの前記スマート・コントラクト・トランザクション・タイプを決定するステップと
    を含む、請求項1に記載の非一時的なコンピュータ可読記憶媒体。
  3. 前記トランザクション・テンプレートに従って前記ターゲット・トランザクションを処理するステップが、
    前記トランザクション・テンプレート中のチェック・ルールを決定するステップと、
    前記トランザクション要求が前記チェック・ルールに従って事前設定された条件を満たすか否かをチェックするステップと
    前記トランザクション要求が前記チェック・ルールに従って事前設定された条件を満たす場合、前記スマート・コントラクト・トランザクション処理ルールに従って、前記ターゲット・トランザクションを処理するステップと、
    前記トランザクション要求が前記チェック・ルールに従って事前設定された条件を満たさないと判断した場合、前記ターゲット・トランザクションの処理が失敗したことを示すプロンプトを返すステップと、
    を含む、請求項1に記載の非一時的なコンピュータ可読記憶媒体。
  4. 前記トランザクション結果を前記ブロックチェーンに書き込むステップが、
    前記トランザクション結果の第1トランザクション情報を、前記ブロックチェーンに追加されるターゲット・ブロックに書き込むステップを含み、
    前記動作は、第1トランザクション情報を前記ターゲット・ブロックに書き込むときに、前記ターゲット・ブロックの状態変更値であって、前記ターゲット・ブロックに記憶された前記第1トランザクション情報が、前記ブロックチェーン内の他のブロックに記録された他のトランザクション情報と一致しているか否かをチェックするために使用される状態変更値を決定及び記憶するステップ、を更に含む請求項1に記載の非一時的なコンピュータ可読記憶媒体。
  5. 前記状態変更値を決定及び記憶するステップが、
    前記第1トランザクション情報を前記ターゲット・ブロックに書き込んだ後、前記ターゲット・ブロックのチェック値を計算するステップと、
    前記チェック値を前記ターゲット・ブロックの状態変更値として使用するステップ、を含む請求項4に記載の非一時的なコンピュータ可読記憶媒体。
JP2019537380A 2017-01-26 2018-01-19 サービス処理方法および装置 Active JP6912583B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710057243.2 2017-01-26
CN201710057243.2A CN107025559B (zh) 2017-01-26 2017-01-26 一种业务处理方法及装置
PCT/CN2018/073395 WO2018137564A1 (zh) 2017-01-26 2018-01-19 一种业务处理方法及装置

Publications (2)

Publication Number Publication Date
JP2020507840A JP2020507840A (ja) 2020-03-12
JP6912583B2 true JP6912583B2 (ja) 2021-08-04

Family

ID=59525976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019537380A Active JP6912583B2 (ja) 2017-01-26 2018-01-19 サービス処理方法および装置

Country Status (16)

Country Link
US (3) US11099887B2 (ja)
EP (1) EP3547241A4 (ja)
JP (1) JP6912583B2 (ja)
KR (1) KR102201844B1 (ja)
CN (1) CN107025559B (ja)
AU (2) AU2018212186B2 (ja)
BR (1) BR112019014589A2 (ja)
CA (1) CA3048574C (ja)
MX (1) MX2019008502A (ja)
MY (1) MY202364A (ja)
PH (1) PH12019501498A1 (ja)
RU (1) RU2725690C1 (ja)
SG (1) SG11201906003VA (ja)
TW (1) TWI722256B (ja)
WO (1) WO2018137564A1 (ja)
ZA (1) ZA201904401B (ja)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025559B (zh) * 2017-01-26 2020-09-18 创新先进技术有限公司 一种业务处理方法及装置
CN107451175B (zh) * 2017-05-23 2020-01-31 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107368259B (zh) * 2017-05-25 2020-07-10 创新先进技术有限公司 一种向区块链系统中写入业务数据的方法和装置
CN107562552A (zh) * 2017-09-06 2018-01-09 深圳市中润四方信息技术有限公司 一种业务消息生成方法及系统
CN107908656A (zh) * 2017-10-13 2018-04-13 平安科技(深圳)有限公司 增加渠道方法、应用服务器及计算机可读存储介质
CN107918863A (zh) * 2017-10-19 2018-04-17 阿里巴巴集团控股有限公司 基于金融产品的前置处理及配置方法、装置及设备
CN107807991B (zh) * 2017-11-07 2020-05-12 泰康保险集团股份有限公司 用于处理区块链数据的方法及装置
CN107943951B (zh) * 2017-11-24 2020-08-11 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种区块链业务信息的检索方法及系统
CN108073707B (zh) * 2017-12-19 2022-01-25 银联商务股份有限公司 金融业务数据更新方法、装置及计算机可读取存储介质
US20190236559A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing smart flow contracts using distributed ledger technologies in a cloud based computing environment
CN108805550A (zh) * 2018-04-27 2018-11-13 深圳市元征科技股份有限公司 一种预付费交易管理方法及预付费交易管理装置
CN108646983B (zh) * 2018-05-08 2021-04-06 北京融链科技有限公司 在区块链上存储业务数据的处理方法和装置
CN108769147B (zh) * 2018-05-11 2021-12-31 北京奇虎科技有限公司 基于超级节点在共享计算中工作量证明方法及装置
CN108696522A (zh) * 2018-05-11 2018-10-23 北京奇虎科技有限公司 一种区块链中的任务处理方法、计算节点、区块链系统
CN108683667B (zh) * 2018-05-16 2021-12-03 深圳市迅雷网络技术有限公司 账户保护方法、装置、系统和存储介质
CN108665253A (zh) * 2018-05-18 2018-10-16 百度在线网络技术(北京)有限公司 一种区块链网络的数据处理方法、装置、设备及存储介质
CN108897729B (zh) * 2018-06-28 2022-11-11 中国建设银行股份有限公司 一种交易模板共享方法、装置、电子设备及存储介质
CN109033206B (zh) * 2018-06-29 2021-06-01 北京奇虎科技有限公司 一种规则匹配方法、云服务器及规则匹配系统
CN108961039B (zh) * 2018-07-02 2023-03-31 创新先进技术有限公司 交易处理方法、装置及系统
CN109165221A (zh) * 2018-08-16 2019-01-08 北京京东尚科信息技术有限公司 区块链的数据存储方法、装置、区块链节点及存储介质
CN109151030B (zh) * 2018-08-24 2021-07-27 中国电子科技集团公司信息科学研究院 一种物联网物体分布式交互系统、方法
CN109285066B (zh) * 2018-08-30 2020-12-08 福建省农村信用社联合社 一种基于银行业务流的智能合约生成与执行的方法
EP3850567A4 (en) 2018-09-14 2022-06-01 JPMorgan Chase Bank, N.A. SYSTEM AND METHOD FOR IMPLEMENTING TRANSACTION PROCESSING ECOSYSTEMS
CN109345388B (zh) * 2018-09-20 2020-09-08 百度在线网络技术(北京)有限公司 区块链智能合约验证方法、装置及存储介质
CN109614409A (zh) * 2018-10-29 2019-04-12 阿里巴巴集团控股有限公司 业务数据处理方法、装置和服务器
CN109542602B (zh) * 2018-11-20 2021-05-11 苏州朗润创新知识产权运营有限公司 一种基于区块链的分布式任务处理方法、装置及系统
CN110046522A (zh) * 2018-11-28 2019-07-23 阿里巴巴集团控股有限公司 基于区块链的业务处理方法及装置、电子设备
KR102184772B1 (ko) * 2018-11-28 2020-12-01 주식회사 파이랩테크놀로지 태그 추천 모델을 이용한 자동화된 스마트 컨트랙트 태그 생성 및 추천 시스템
CN109508975A (zh) * 2018-11-28 2019-03-22 阿里巴巴集团控股有限公司 一种账单分期事件的记录和查询方法、装置及电子设备
CN109544078B (zh) * 2018-11-29 2021-04-02 东莞市大易产业链服务有限公司 一种基于区块链技术的货物管理方法
CN109615516B (zh) * 2018-12-05 2021-04-16 腾讯科技(深圳)有限公司 资源转移方法、装置、电子设备及存储介质
CN110048846B (zh) * 2018-12-12 2020-04-14 阿里巴巴集团控股有限公司 一种基于区块链智能合约的签名验证方法及系统
CN109725985B (zh) * 2018-12-28 2021-01-29 云宏信息科技股份有限公司 虚拟机模板的管理方法及装置
CN111640012A (zh) * 2019-03-01 2020-09-08 中国银联股份有限公司 一种区块链交易追溯的方法及装置
CA3060790C (en) 2019-04-12 2021-06-08 Alibaba Group Holding Limited Performing parallel execution of transactions in a distributed ledger system
SG11201910057QA (en) 2019-04-12 2019-11-28 Alibaba Group Holding Ltd Performing parallel execution of transactions in a distributed ledger system
CN110119480A (zh) * 2019-05-23 2019-08-13 北京小米移动软件有限公司 信息处理方法、装置、设备和存储介质
CN110162564A (zh) * 2019-05-30 2019-08-23 北京中电普华信息技术有限公司 业务数据处理方法及系统
CN110473082B (zh) * 2019-08-15 2022-09-23 中国银行股份有限公司 基于标签和判定树的科目处理方法及系统
US10831452B1 (en) 2019-09-06 2020-11-10 Digital Asset Capital, Inc. Modification of in-execution smart contract programs
CN110765099B (zh) * 2019-09-06 2024-01-30 创新先进技术有限公司 一种业务构建方法、装置及计算机设备
US11132403B2 (en) * 2019-09-06 2021-09-28 Digital Asset Capital, Inc. Graph-manipulation based domain-specific execution environment
CN110688634B (zh) * 2019-09-19 2021-09-28 杭州云象网络技术有限公司 一种联盟链事务智能执行的方法
CN110727712B (zh) * 2019-10-15 2021-06-04 腾讯科技(深圳)有限公司 基于区块链网络的数据处理方法、装置、电子设备及存储介质
CN110990879B (zh) * 2019-11-08 2022-03-18 中国电子科技网络信息安全有限公司 一种基于区块链的数据存证方法
CN110955724A (zh) * 2019-11-21 2020-04-03 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、节点设备及存储介质
CN111064711B (zh) * 2019-11-27 2020-11-10 重庆浙大网新科技有限公司 基于区块链的数据流检测方法、装置及服务器
CN110933163B (zh) * 2019-11-27 2021-08-24 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
WO2021125106A1 (ja) * 2019-12-19 2021-06-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、装置、および、プログラム
CN111126978B (zh) * 2019-12-28 2023-03-14 飞天诚信科技股份有限公司 一种区块链上快速处理事务的实现方法及装置
CN111158837B (zh) * 2019-12-31 2023-08-22 中国银行股份有限公司 银行软件功能界面生成方法和装置
CN111241594B (zh) * 2020-01-06 2023-10-13 平安科技(深圳)有限公司 交易信息的加签方法、装置、计算机设备和存储介质
US11003433B1 (en) * 2020-02-05 2021-05-11 Dell Products L.P. System and method for improved peer-to-peer software distribution
US20210256635A1 (en) * 2020-02-17 2021-08-19 EnergyXchain, LLC Creating, monitoring, and updating energy transactions using distributed ledger technology and contract codex
CN111401903B (zh) * 2020-06-03 2020-09-11 腾讯科技(深圳)有限公司 区块链消息处理方法、装置、计算机以及可读存储介质
CN113760341B (zh) * 2020-06-11 2023-12-05 北京京东振世信息技术有限公司 数据处理方法、装置及设备
CN111768204A (zh) * 2020-06-17 2020-10-13 中国建设银行股份有限公司 一种业务处理方法和装置
CN111737274B (zh) * 2020-06-19 2023-08-08 中国工商银行股份有限公司 交易数据的处理方法、装置和服务器
CN111737324B (zh) * 2020-08-14 2021-02-09 支付宝(杭州)信息技术有限公司 数据分析方法及装置
CN111949297B (zh) * 2020-08-20 2023-04-07 杭州溪塔科技有限公司 一种区块链智能合约升级方法、装置及电子设备
CN111897890B (zh) * 2020-08-21 2023-09-08 中国工商银行股份有限公司 金融业务处理方法及装置
CN112200578A (zh) * 2020-09-23 2021-01-08 裴俊伟 基于区块链的金融业务校验方法和金融业务校验平台
CN112398941A (zh) * 2020-11-10 2021-02-23 北京达佳互联信息技术有限公司 一种数据处理方法、装置、电子设备和存储介质
CN112613877B (zh) * 2020-12-17 2021-12-07 腾讯科技(深圳)有限公司 应用于区块链网络的智能合约触发方法、装置及相关设备
CN112559635B (zh) * 2020-12-23 2023-06-16 网易(杭州)网络有限公司 以太坊联盟链节点的业务处理方法、装置、设备及介质
CN112668998B (zh) * 2020-12-23 2023-12-19 树根互联股份有限公司 流程实现方法、装置、系统、电子设备和可读存储介质
CN112286643B (zh) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 以太坊虚拟机的事务处理方法、装置、设备和介质
CN113093958B (zh) * 2021-04-06 2022-05-17 中国工商银行股份有限公司 数据处理方法、装置和服务器
CN112990769A (zh) * 2021-04-21 2021-06-18 北京宇信科技集团股份有限公司 业务处理方法、装置、电子设备和存储介质
CN113377419A (zh) * 2021-05-31 2021-09-10 同盾科技有限公司 一种业务处理方法、装置、可读存储介质及电子设备
CN113361733B (zh) * 2021-06-03 2023-04-07 建信金融科技有限责任公司 预约业务的处理方法和装置
CN113434175B (zh) * 2021-06-29 2024-02-27 平安科技(深圳)有限公司 数据处理方法、装置、存储介质及设备
CN116560818B (zh) * 2023-06-29 2023-09-12 深圳市易图资讯股份有限公司 一种空间数据服务分发与调度的方法及系统

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5613012A (en) * 1994-11-28 1997-03-18 Smarttouch, Llc. Tokenless identification system for authorization of electronic transactions and electronic transmissions
JP3537680B2 (ja) 1998-10-22 2004-06-14 富士通株式会社 プロトコル制御用集積回路
US6971096B1 (en) * 2000-05-19 2005-11-29 Sun Microsystems, Inc. Transaction data structure for process communications among network-distributed applications
US7013290B2 (en) * 2001-08-03 2006-03-14 John Allen Ananian Personalized interactive digital catalog profiling
JP4163927B2 (ja) * 2001-10-31 2008-10-08 松下電器産業株式会社 Javaコンパイラ、及び、当該Javaコンパイラが使用するコンパイル情報の生成装置
US20030187841A1 (en) 2002-03-28 2003-10-02 International Business Machines Corporation Method and structure for federated web service discovery search over multiple registries with result aggregation
KR100965437B1 (ko) 2003-06-05 2010-06-24 인터트러스트 테크놀로지즈 코포레이션 P2p 서비스 편성을 위한 상호운용 시스템 및 방법
US20050080768A1 (en) 2003-10-10 2005-04-14 International Business Machines Corporation Methods and apparatus for dynamic service discovery from Web services representation chain
US7590658B2 (en) * 2004-09-30 2009-09-15 Deloitte Development Llc System, software and method for examining a database in a forensic accounting environment
EP1753195B1 (en) 2005-07-27 2012-03-07 Sap Ag Server computer, client device and web service implemented data processing method
US7860968B2 (en) 2005-11-21 2010-12-28 Sap Ag Hierarchical, multi-tiered mapping and monitoring architecture for smart items
CN100550781C (zh) * 2007-06-27 2009-10-14 中兴通讯股份有限公司 一种基于模板的抽象配置业务定制方法
US20100106611A1 (en) * 2008-10-24 2010-04-29 Uc Group Ltd. Financial transactions systems and methods
US8874701B2 (en) * 2008-12-22 2014-10-28 Sap Se On-demand provisioning of services running on embedded devices
US9686814B2 (en) * 2011-11-07 2017-06-20 Industrial Technology Research Institute Method of reference cell maintenance
US9805385B2 (en) * 2011-11-21 2017-10-31 Nant Holdings Ip, Llc Subscription bill service, systems and methods
US8688661B2 (en) 2012-06-15 2014-04-01 International Business Machines Corporation Transactional processing
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
JP2015513378A (ja) * 2012-11-21 2015-05-11 ナント ホールディングス アイピー,エルエルシー 加入請求書サービス、システムおよび方法
US9553982B2 (en) 2013-07-06 2017-01-24 Newvoicemedia, Ltd. System and methods for tamper proof interaction recording and timestamping
CN104715309A (zh) * 2013-12-11 2015-06-17 阿里巴巴集团控股有限公司 业务控制方法及装置
JP6247193B2 (ja) * 2014-10-10 2017-12-13 山下 健一 広告閲覧促進システム、情報処理方法及びプログラム
JP2016151802A (ja) * 2015-02-16 2016-08-22 科韻動力有限公司 仮想通貨の管理方法、仮想通貨システム、該仮想通貨システムにおける広告方法、及びアプリケーションプログラム
US9967333B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Deferred configuration or instruction execution using a secure distributed transaction ledger
US9967334B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
CN106296243A (zh) * 2015-05-22 2017-01-04 阿里巴巴集团控股有限公司 业务实现方法及装置
KR101628624B1 (ko) * 2015-06-01 2016-06-09 주식회사 코인플러그 비트코인을 기반으로 하는 이종국가간 송금시스템 및 방법
CN106301881B (zh) * 2015-06-29 2020-01-03 阿里巴巴集团控股有限公司 一种业务处理方法和装置
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
EP3394818A4 (en) 2015-12-21 2019-08-14 Kochava Inc. AUTOREGULATING TRANSACTION SYSTEM AND ASSOCIATED METHODS
CN105608588A (zh) * 2016-01-04 2016-05-25 布比(北京)网络技术有限公司 一种溯源记录处理的方法及装置
US10108812B2 (en) 2016-01-28 2018-10-23 Nasdaq, Inc. Systems and methods for securing and disseminating time sensitive information using a blockchain
GB2604540B (en) 2016-02-03 2023-01-11 Luther Systems System and method for secure management of digital contracts
US10129238B2 (en) 2016-02-10 2018-11-13 Bank Of America Corporation System for control of secure access and communication with different process data networks with separate security features
US10142312B2 (en) 2016-02-22 2018-11-27 Bank Of America Corporation System for establishing secure access for users in a process data network
US20170264428A1 (en) 2016-03-08 2017-09-14 Manifold Technology, Inc. Data storage system with blockchain technology
WO2017173399A1 (en) 2016-03-31 2017-10-05 Clause, Inc. System and method for creating and executing data-driven legal contracts
CA3019642C (en) 2016-04-01 2023-03-07 Jpmorgan Chase Bank, N.A. Systems and methods for providing data privacy in a private distributed ledger
US10529042B2 (en) 2016-04-18 2020-01-07 Rs Ltd. System and method for managing transactions in dynamic digital documents
WO2017189027A1 (en) 2016-04-29 2017-11-02 Digital Asset Holdings Digital asset modeling
CN106230808A (zh) * 2016-07-28 2016-12-14 杭州云象网络技术有限公司 一种基于区块链技术的个人征信系统建设方法
CN106296009A (zh) * 2016-08-12 2017-01-04 中国银行股份有限公司 一种业务处理方法及装置
CN106296200A (zh) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 基于区块链技术的分布式光伏电力交易平台
US10715331B2 (en) * 2016-12-28 2020-07-14 MasterCard International Incorported Method and system for providing validated, auditable, and immutable inputs to a smart contract
CN107025559B (zh) * 2017-01-26 2020-09-18 创新先进技术有限公司 一种业务处理方法及装置

Also Published As

Publication number Publication date
TW201828220A (zh) 2018-08-01
KR102201844B1 (ko) 2021-01-13
EP3547241A4 (en) 2020-01-15
JP2020507840A (ja) 2020-03-12
US20200174824A1 (en) 2020-06-04
BR112019014589A2 (pt) 2020-02-18
TWI722256B (zh) 2021-03-21
WO2018137564A1 (zh) 2018-08-02
US20200285507A1 (en) 2020-09-10
US20190310878A1 (en) 2019-10-10
AU2019101602A4 (en) 2020-01-23
US11099887B2 (en) 2021-08-24
CN107025559B (zh) 2020-09-18
ZA201904401B (en) 2020-08-26
US10782998B2 (en) 2020-09-22
CN107025559A (zh) 2017-08-08
EP3547241A1 (en) 2019-10-02
PH12019501498A1 (en) 2020-06-08
AU2018212186A1 (en) 2019-07-18
MX2019008502A (es) 2019-09-13
CA3048574A1 (en) 2018-08-02
US10817330B2 (en) 2020-10-27
MY202364A (en) 2024-04-24
SG11201906003VA (en) 2019-08-27
KR20190092564A (ko) 2019-08-07
RU2725690C1 (ru) 2020-07-03
AU2018212186B2 (en) 2020-09-10
CA3048574C (en) 2021-11-16

Similar Documents

Publication Publication Date Title
JP6912583B2 (ja) サービス処理方法および装置
JP6949118B2 (ja) ブロックチェーンサービス受付けおよびコンセンサス方法およびデバイス
JP6921206B2 (ja) データベース状態決定方法およびデバイスならびに整合性検証方法およびデバイス
JP7231681B2 (ja) パッケージファイルに対する機能拡張方法およびシステム
US20150331726A1 (en) Persistent and resilient worker processes
JP2014521184A (ja) 信頼レベルのアクティブ化
JP6412276B2 (ja) 仮想マシン作成方法及び装置
CN115378735B (zh) 一种数据处理方法、装置、存储介质及电子设备
CN110765394A (zh) so文件加载方法、装置、存储介质及终端设备
TWI590073B (zh) 用於提供存取虛擬命名空間中資源的虛擬整合呼叫
JP2017142792A (ja) ファイル保護方法
WO2023231342A1 (zh) 基于变量状态自动执行合约的方法和装置
CN111459573A (zh) 一种智能合约执行环境的启动方法以及装置
CN113342376B (zh) 一种针对物联网设备的操作系统进行升级的方法及装置
CN111142972B (zh) 用于扩展应用程序的功能的方法、装置、系统及介质
CN113282363A (zh) 一种优化混合app的方法及装置
CN115269562B (zh) 一种数据库管理方法、装置、存储介质及电子设备
EP3872630A2 (en) Request processing method and apparatus, electronic device, and computer storage medium
KR100892286B1 (ko) 다중 파티션 의존성을 지원하는 임베디드 시스템 통합 설정방법
CN113805858A (zh) 持续部署脚本语言开发的软件的方法和装置
CN118051421A (zh) Io时延故障的注入方法、装置、电子设备及存储介质
CN112579192A (zh) 信息处理方法、装置、系统和计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201201

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210127

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210708

R150 Certificate of patent or registration of utility model

Ref document number: 6912583

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150