JP2023500316A - ファイル記憶方法、端末及び記憶媒体 - Google Patents
ファイル記憶方法、端末及び記憶媒体 Download PDFInfo
- Publication number
- JP2023500316A JP2023500316A JP2022525637A JP2022525637A JP2023500316A JP 2023500316 A JP2023500316 A JP 2023500316A JP 2022525637 A JP2022525637 A JP 2022525637A JP 2022525637 A JP2022525637 A JP 2022525637A JP 2023500316 A JP2023500316 A JP 2023500316A
- Authority
- JP
- Japan
- Prior art keywords
- file
- address set
- stored
- block chain
- chain network
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000015654 memory Effects 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 40
- 238000007726 management method Methods 0.000 description 34
- 230000006870 function Effects 0.000 description 32
- 230000007246 mechanism Effects 0.000 description 12
- 230000010076 replication Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 239000012634 fragment Substances 0.000 description 6
- 230000008520 organization Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013502 data validation Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000007794 visualization technique Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/184—Distributed file systems implemented as replicated file system
- G06F16/1844—Management specifically adapted to replicated file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
- G06F16/152—File search processing using file content signatures, e.g. hash values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
- G06F16/1837—Management specially adapted to peer-to-peer storage networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本出願は、出願番号が201911067461.Xであり、出願日が2019年11月04日である中国特許出願に基づいて出願され、この中国特許出願に基づく優先権を主張するものであり、該中国特許出願の全内容を参照として本出願に援用する。
本出願は端末技術分野に関し、特に、ファイル記憶方法、端末及び記憶媒体に関する。
本出願の実施例は、
記憶対象ファイルを取得して前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得ることであって、Nは1以上の整数であることと、
前記N個のサブファイルをIPFSに送信し、前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信することであって、Mは1以上であり、且つN以下の整数であることと、
前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成して前記アドレス集合を暗号化し、アドレス集合暗号文を得ることと、
前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信することであって、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられることと、を含むファイル記憶方法を提供する。
記憶対象ファイルを取得するように構成される取得部と、
前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得るように構成され、Nが1以上の整数である処理部と、
前記N個のサブファイルをIPFSに送信するように構成される送信部と、
前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信するように構成され、Mが1以上であり、且つN以下の整数である受信部と、
前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成するように構成される生成部と、
前記アドレス集合を暗号化し、アドレス集合暗号文を得るように構成される暗号化部と、を備え、
前記送信部は、さらに前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信するように構成され、
前記受信部は、さらに前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信するように構成され、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられる端末を提供する。
本出願の実施例は、プログラムを記憶しており、端末に適用され、前記プログラムがプロセッサにより実行される時に、上記のようなファイル記憶方法を実現するコンピュータ読み取り可能な記憶媒体を提供する。
特に定義しない限り、本明細書に使用される全ての技術や科学用語は本発明の技術分野に属する技術者が一般的に理解する意味と同じである。本明細書に使用される用語は本発明の実施例を説明するためだけであり、本発明を制限するものではない。
本発明の実施例についてさらに詳細に説明する前に、本発明の実施例に言及される名詞や用語について説明し、本発明の実施例に言及される名詞や用語は以下の説明に適用する。
2)ブロック・チェーン・ネットワークは、新たなブロックを、ブロックチェーンの一連の、分散型ノードの集合に、コンセンサスの方式で取り込む。
5)取引(Transaction)は、コンピュータ用語の「トランザクション」に相当し、配置(Deploy)、呼び出し(Invoke)及びクエリ(Query)の3種類の異なる模擬取引操作を含む。配置という種類の取引は、ブロック・チェーン・ネットワークのノードに対して、指定されたチェーンコードをインストールするために用いられ、呼び出し及びクエリという種類の取引は、配置番号のチェーンコードを呼び出すために用いられ、台帳における目標口座の関連データに対する操作を実現し、追加、削除、検索、変更の操作により口座におけるキー値(Key-Value)対という形式のデータを改修すること、又は台帳に新たな口座を追加することを含む。当該取引は、ビジネス上の取引だけを指しているわけではなく、ブロックチェーン分野において「取引」という用語が一般的に使用されることに鑑み、本発明の実施例においてもこの習慣を踏襲する。
7)台帳データは、実際に記憶されたブロックデータであり、即ちブロックチェーンに記録された一連の系列的な、改ざん不可な取引の記録であり、ファイルシステムのファイルの形式として表すことができ、取引において呼び出されたスマート契約が実行される時、口座や口座におけるデータの更新が図れる。
8)台帳状態は、状態データとも呼ばれ、即ち台帳データの状態であり、データベースにおけるキー値対の形式として表すことができ、そのうちリアルタイムの台帳状態はコンセンサスの取引で更新されたキー値対の最新記録を示すために用いられ、履歴台帳状態はキー値対の履歴記録を示すために用いられる。
10)スマート契約(Smart Contracts)は、チェーンコード(Chaincode)とも呼ばれ、ブロック・チェーン・ネットワークに配置された、条件に基づいてトリガして実行されるプログラムチェーンコードは安全なコンテナで動作し、台帳データや台帳状態を初期化・管理する。
リソース層105は、例えばコンピュータ、サーバ/クラスタ及びクラウドにおける計算リソースや記憶リソースなどの各種の利用可能な計算リソースや記憶リソースを含み、リソース層105を実現する下位層ハードウェアの差異性を隠蔽するように、抽象化してデータ層104に統一的なインターフェースを提供する。
記憶リソースは、各種の揮発性メモリや不揮発性メモリなどの各種の記憶媒体を含む。ここで、不揮発性メモリは読み出し専用メモリ(ROM:Read Only Memory)、プログラム可能な読み取り専用メモリ(PROM:Programmable Read-OnlyMemory)であってもよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(RAM:Random Access Memory)であってもよい。
実行可能な命令は、例として、ソフトウェア(システムプログラム、アプリケーションを含む)、ソフトウェアモジュール、スクリプト、プラグインなどの形式を採用し、任意の形式のプログラミング言語(コンパイル言語、インタプリタ言語、宣言言語またはプロシージャ言語を含む)でプログラミングすることができ、また独立したプログラムとして配置されるか、又はモジュール、コンポーネント若しくはコンピューティング環境での使用に適したその他のユニットとして配置されるように任意の形式で配置されることができる。
ネットワーク層103はP2Pネットワークプロトコル、データ伝播の仕組みやデータ検証の仕組み、アクセス及び認証の仕組み並びに業務主体の身元を実装する。P2Pネットワークプロトコルはブロック・チェーン・ネットワークにおけるノード間の通信を実現し、データ伝播の仕組みはブロック・チェーン・ネットワークにおける取引や取引結果の伝播を確保し、データ検証の仕組みは暗号学方法(例えばデジタル証明書、デジタル署名、公開鍵対・秘密鍵対)に基づいてノード間のデータ伝送の信頼性を実現するために用いられ、アクセス及び認証の仕組みは業務主体の身元に基づいて端末のアクセス及び認証を管理するために用いられる。 コンセンサス層102はブロックチェーンにおいて伝播された取引結果の一致性を達成する仕組みを実装し、POS、POW及びDPOSなどを含み、コンセンサス仕組みのプラグインを支持する。
アプリケーション層101はブロック・チェーン・ネットワークが実現できる各種業務を実装し、取引決済、遡源及び存在証明等を含む。
1)状態コンポーネント(etcd)はクラスタ全体の状態を保存するために用いられる。
2)アプリケーション・プログラミング・インタフェース(API:Application Programming Interface)Serverコンポーネントは、リソース操作の唯一のポータルを提供し、認証、許可、アクセス制御、API登録及び発見等の仕組みを提供するために用いられる。
共有ボリュームを例とし、ノードに、例えばネットワーク・ファイル・システム(NFS:Network File System)、クラスタ・ファイル・システム(GlusterFS)、cephファイルシステム(Cephfs)などの共有ファイル・システム・コンポーネントが配置される場合、スケジューラ・コンポーネントはボリュームにマウントされたコンテナ群を他の機器(ノード)のボリュームに容易にスケジューリング(マウント)することができる。
5)レプリケーション・コントローラ(RC:Replication Controller)・コンポーネントは、一定時間内に一定数のPodレプリケーションが常に動作するように制御し、例えば、動作中のPodレプリケーションが設定値を超えると、一部のPodレプリケーションを閉じ、Podレプリケーションが設定値より少なくなると、新たなPodレプリケーションを作成する。
6)配置コントローラ(Deployment Controller)・コンポーネントは、コンテナ・クラスタにおけるリソース対象である配置(Deployment)対象を管理・保守するために用いられ、配置対象をレプリケーション・コントローラに関連付け、配置対象において、コンテナ群及びレプリケーション・コントローラの目標状態を宣言するように、コンテナ群及びレプリケーション・コントローラに宣言型更新を提供することで、配置対象が更新される場合、レプリケーション・コントローラ及びコンテナ群の更新を実現するように制御する。
1)コンテナエンジン(Dockerと記す)は、全ての具体的なミラーリング・ダウンロード及びコンテナの動作を担当するために用いられる。
2)デーモン・プロセス・コンポーネント(Kubeletと記す)は、コンテナのライフサイクル(作成、起動及び停止)の保守を担当し、またボリューム及びコンテナ・ネットワーク・インタフェース(CNI:Container Network Interface)の管理を担当する。
ボリュームの管理を例とし、デーモン・プロセス・コンポーネントは、ノードに配置された共有ファイルシステムのコンポーネント、例えばネットワーク・ファイル・システム(NFS:Network File System)、クラスタ・ファイル・システム(GlusterFS)、cephファイルシステム(Cephfs)により、1つのコンテナ群における各コンテナを同一のボリュームにマウントすることで、各コンテナは同一のボリュームを使用して動作中に生じたデータを記憶し、ボリュームにおけるデータは同一のコンテナ群のいずれかのコンテナによりアクセスされ得る。
図2に示すクラスタに基づき、1つのブロック・チェーン・ネットワークが配置されたアプリケーションのミラーリングはコンテナ群(以下の例では目標Podという)に実装され、ノード(以下の例では目標Nodeという)で動作する例示的な過程は以下の通りである。
続いて、要求はアプリケーション・インタフェースAPI Serverを介してetcdに書き込まれ、この時、Controller Managerは、API Serverのリソース変化監視インターフェースを介して、このRCイベントが感知され、現在のクラスタにそれに対応するPodインスタンスがないことを発覚した場合、RCにおけるPodテンプレート定義に基づいてPod対象を生成し、API Serverを介してetcdに書き込む。
続いて、Kubectlは目標PodにマッピングするServiceの新規作成要求を提出し、Controller ManagerはLabelによってクエリして関連するPodインスタンスを得、続いてServiceのエンドポイント(Endpoints)情報(アドレス及びポートを含む)を生成してAPI Serverによってetcdに書き込み、コンテナ・クラスタにおける全てのNodeで動作するProxyプロセスはAPI ServerによってService対象とそれに対応するEndpoints情報をクエリ・監視し、ソフトウェア方式のロードバランサーを確立してServiceのバックエンドPodへのアクセスのためのサービスの転送機能を実現する。
図3は、本出願の実施例に係る開発者が端末300を介してブロック・チェーン・ネットワーク・サービス・プラットフォーム100にアクセスする概略図であり、開発者の端末300のソフトウェア開発キット(SDK:Software Development Kit)/ワールドワイドウェブ(Web:World Wide Web)320のインターフェースは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100におけるデータ層104の相応するSDE/Webインターフェースに接続され、開発者の端末300というローカルで遠隔方式により特定業務をサポートするブロック・チェーン・ネットワークを配置することをサポートし、端末300のグラフィック・インターフェース310にブロック・チェーン・ネットワーク・サービス・プラットフォーム100の各種機能の管理画面を表示し、コンテナ・クラスタの作成や新たなコンテナ・クラスタのアクセス、記憶リソースの管理、ブロック・チェーン・ネットワークのワンクリック配置、チェーンコード管理(動作状態確認)、アプリケーション・ストア管理などを含む。
図4Aはブロック・チェーン・ネットワーク・サービス・プラットフォーム100の状態確認画面を示し、状態確認画面でブロック・チェーン・ネットワークの動作状態、例えばCPU使用量、メモリ使用量、リソース(ノード)使用量の状況を確認する。
図4Bはブロック・チェーン・ネットワーク・サービス・プラットフォーム100のワンクリック配置のコンソール画面を示し、開発者がブロック・チェーン・ネットワークの基本情報(ブロックドメイン名、バージョン番号を含む)及び組織(組織名、ノード数、ユーザー数などを含む)を設定することをサポートし、デフォルト値でオーダリングノードタイプ、チャネル名称及びチェーンコード名称などを含む詳細オプションを設定する。
図4Dにおいて、ブロック・チェーン・ネットワークをサポートするためのコンテナ・クラスタを追加し、クラスタ名を入力し、クラスタの作成機能のオプションがトリガされた後に作成画面に遷移することをサポートする。
図4Fは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100の記憶管理のコンソール画面を示し、記憶管理の機能ボタンがトリガされると、記憶管理リスト画面に遷移し、記憶クエリ及び削除機能を含む、クラスタにおいて既に作成された記憶項目を表示する。
図4Gは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100の記憶詳細のコンソール画面を示し、図4Hは、記憶の詳細を表示し、且つ記憶に対して記憶空間の動的拡張を行うことをサポートする。
図4Kは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100のハイパーレジャー(Hyperledger)のコンソール画面を示し、ブロック・チェーン・ネットワークの配置に用いられるHyperledgerの名称、ネットワークバージョン、状態及び作成日時の情報を表示する。
図4Lは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100のHyperledgerのワンクリック配置のコンソール画面を示し、Hyperledger配置の基本情報に対する構成項目、及びデフォルト値を用いる詳細構成項目を提供し、例えば、オーダリングノードタイプ、チャネル、デフォルトチェーンコード及び初期化パラメータなどである。
図4Oは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100のネットワーク詳細のコンソール画面を示し、異なるチャネルの組織メンバー、ブロックの高さ、取引数及び契約数などの情報の閲覧をサポートし、また閲覧されたチャネルの組織名、チャネルにおけるノード名、チャネルにおけるチェーンコード名称などの情報を表示することができる。
図4Pは、ブロック・チェーン・ネットワーク・サービス・プラットフォーム100のチェーンコードのクエリのコンソール画面を示し、ネットワーク名称、チェーンコード名称、チェーンコードパラメータ、台帳名及びチェーンコード関数などの方式を用いてチェーンコードをクエリすることにサポートし、クエリの次元は状態、メッセージ及びデータを含む。
図5は本出願の実施例に係る例示的にブロック・チェーン・ネットワーク・サービス・プラットフォームを用いて配置されたブロック・チェーン・ネットワークの構成概略図であり、アプリケーションはCAから正当な身分証明書を取得してネットワークにおけるアプリケーション・チャネルに加入する。正式の取引の開始前に、まず取引提案(Proposal)を立案し組織1及び組織2における裏書きノードに提出して裏書きを行う必要があり、クライアントは十分な(数は裏書きポリシーに基づいて決定される)裏書きを収集した後、裏書きを利用して正当な取引要求(裏書きノードを有する裏書き)を作成し、ソートサービスにおけるオーダリングノード(Orderer)に送信してソートすることで、取引をブロックとして実装することができる。
クライアント(アプリケーション):SDKを用いてブロック・チェーン・ネットワークと対話を行う。まず、クライアントは認証局(CA:Certificate Authority)から正当な身分証明書を取得してネットワークにおけるアプリケーション・チャネルに加入する。本取引の開始前に、まず取引提案(Proposal)を立案して裏書きノードに提出して裏書きを行う必要がある。クライアントは十分な(数は裏書きポリシーに基づいて決定される)裏書きを収集した後、裏書きを利用して正当な取引要求(裏書きノードを有する裏書き)を作成し、オーダリングノード(Orderer)に送信してソートすることで、取引をブロックとして実装することができる。クライアントはさらにイベント仕組みによってネットワークにおけるメッセージを監視し、取引が成功に受信されたか否かを知ることができる。
リーダーピア(Leader Peer):オーダリングノードと通信するノードであり、オーダリングノードから最新のブロックを取得してブロック・チェーン・ネットワークの内部で同期することを担当する。
コミッター(Committer):ブロックチェーン及び台帳の構造(状態デシベル(DB:decibel)、履歴DB、インデックスDBなどを含む)を保守する。このノードは定期的にオーダリングノードから、ソートされたバッチ取引ブロック構造を取得し、これらの取引を検査する(取引メッセージ構造、署名完全性、重複するか否か、読み書き集合バージョンが一致するか否か等を含む)。検査合格後に正当な取引を実行し、結果を台帳に書き込み、同時に新たなブロックを作成する。
データ量が大きいファイルに対し、従来のブロックチェーンにおける記憶及び検索方式は一般には、ファイルをサービス側に送信し、サービス側でファイルを複数のサブファイルに分割し、さらに複数のサブファイルをそれぞれ暗号化し、続いて暗号化したサブファイルを記憶し、ユーザがファイルをダウンロードする時に、サービス側で全てのサブファイルを取得して復号化し、続いて全てのサブファイルをデータ量の大きいファイルに併合してから、端末に返信する。これにより、従来のブロックチェーンの記憶方式は暗号化効率が低く、安全性が悪いだけでなく、またサービス側の負荷過大という課題が生じ、データ量の大きいファイルの記憶需要を満たすことができない。
本出願の一実施例はファイル記憶システムが実行するファイル記憶方法を提供し、このファイル記憶システムは端末に集積される。図7は本出願の実施例に係るファイル記憶方法を実現する概略図1である。ファイル記憶システムはユーザによりアップロードされたファイルを取得した後、このファイルを分割して複数のサブファイルを得、分割したサブファイルをIPFSに繰り返して記憶し、さらにIPFSから返信された複数のサブファイルに対応するファイルアドレスを受信し、複数のファイルアドレスで生成されたファイルアドレス集合に対して暗号化操作を行い、ファイルアドレス集合暗号文を生成し、さらにこのファイルアドレス集合暗号文に対応するハッシュ値を生成し、その後、ファイルアドレス集合暗号文及びハッシュ値を一緒にブロックチェーンに記憶し、ブロックチェーンから返信された取引識別子(ID:Identity document)、取引時間、ブロック情報などを受信し、自己相関処理を経て、取引IDを保存する。
ステップS101は、記憶対象ファイルを取得して記憶対象ファイルに対して分割処理を行い、記憶対象ファイルに対応するN個のサブファイルを取得し、Nは1以上の整数である。
本出願の実施例において、ユーザがファイル記憶を行う必要がある場合、端末は記憶対象ファイルを取得し、記憶対象ファイルに対して分割処理を行うことができ、さらに、この記憶対象ファイルに対応するN個のサブファイルを得ることができ、Nは1以上の整数である。
なお、本出願の実施例において、記憶対象ファイルはビデオファイル、オーディオファイル、圧縮ファイル又は他のタイプのファイルであってもよく、即ち、記憶対象ファイルのファイルタイプは文書(Word)形式、携帯用の書類の形式(PDF:Portable Document Format)、画像形式(JPG:Joint Photographic Experts Group)、携帯用のネットワーク画像(PNG:Portable Network Graphics)、ビデオ及び音声を含むことができ、本出願では限定されない。
ステップS102は、N個のサブファイルをIPFSに送信し、IPFSから返信されたN個のサブファイルに対応するM個のアドレス情報を受信し、Mは1以上であり、且つN以下の整数である。
なお、本出願の実施例において、記憶対象ファイルに対して分割処理を行ってN個のサブファイルを得た後、記憶対象ファイルに対応するN個のサブファイルをIPFSに送信し、IPFSの記憶チェーンはN個のサブファイルを識別処理し、それぞれN個のサブファイルを記憶ノードA、記憶ノードB、記憶ノードCなどのM個の記憶ノードに割り当て、IPFSにおける1つの記憶ノードは少なくとも1つのサブファイルを対応して記憶することができ、また1つの記憶ノードから1つのアドレス情報を返信するので、記憶ノード数は記憶対象ファイルに対応するサブファイル数以下である。相応的には、端末はN個のサブファイルをIPFSに送信し、IPFSが対応するM個の記憶ノードに記憶し、記憶が完了した後、端末はIPFSから返信されたM個の記憶ノードに対応するM個のアドレス情報を受信する。さらに、記憶対象ファイルに対応するN個のサブファイルをIPFSに送信する時に、1つのサブファイルを1つの記憶ノードへ固定的に送信して1つの対応するアドレス情報を返信するという個別順次送信方式でサブファイルの送信を行ってもよく、又は特定のブロードキャスト方式で送信してもよい。
ステップS103は、M個のアドレス情報に基づき、記憶対象ファイルに対応するアドレス集合を生成し、アドレス集合を暗号化し、アドレス集合暗号文を得る。
本出願の実施例において、端末はN個のサブファイルをIPFSに送信し、IPFSから返信されたM個のアドレス情報を受信した後、得たM個のアドレスに基づき、記憶対象ファイルに対応するアドレス集合を生成し、端末は生成したアドレス集合を暗号化し、さらにアドレス集合暗号文を得る。
なお、本出願の実施例において、端末がランダムに生成した非対称鍵対は公開鍵と秘密鍵を含み、公開鍵と秘密鍵はペアであり、公開鍵によりデータを暗号化すれば、対応する秘密鍵でしか復号化できなく、秘密鍵によりデータを暗号化すれば、対応する公開鍵でしか復号化できない。具体的には、秘密鍵は片方でしか安全に保管することがなく、外部に漏洩してはならず、公開鍵はそれを要求する何方にも送ってもよい。相応的には、端末はRSAアルゴリズムを用いて非対称暗号化を行うことができる。非対称鍵対における公開鍵と秘密鍵は同時に生成され、端末は公開鍵によりアドレス集合を暗号化すると同時に、得た秘密鍵を記憶することで、記憶対象ファイルの記憶が完了した後に記憶対象ファイルのダウンロードを行う時のアドレス集合の復号化を実現することができる。
さらに、本出願の実施例において、公開鍵により記憶対象ファイルに対応するアドレス集合を暗号化し、アドレス集合暗号文を得た後、端末は、ハッシュ演算により、このアドレス集合暗号文に対応するハッシュ値を生成し、さらにアドレス集合暗号文及びハッシュ値をブロック・チェーン・ネットワークに記憶することができる。
本出願の実施例において、端末は記憶対象ファイルに対応するアドレス集合を暗号化し、アドレス集合暗号文を得た後、このアドレス集合暗号文をブロック・チェーン・ネットワークに送信し、ブロック・チェーン・ネットワークから返信された目標インデックス値を受信することができ、目標インデックス値はアドレス集合暗号文を識別するために用いられる。
さらに、本出願の実施例において、端末は記憶対象ファイルに対応するアドレス集合暗号文及びハッシュ値をブロックチェーンに記憶し、ブロックチェーンから返信された目標インデックス値を得た後、さらに得た目標インデックス値を記憶することができ、これにより記憶対象ファイルをダウンロードするダウンロード要求を受信するとき、この目標インデックス値により記憶対象ファイルを取得することができる。
ステップS105は、目標インデックス値が含まれるダウンロード要求を受信する。
なお、本出願の実施例において、端末は記憶対象ファイルをダウンロードするダウンロード要求を受信し、ダウンロード要求に含まれる情報はアドレス集合暗号文に対応する目標インデックス値を含んでもよく、アドレス集合暗号文に対応するハッシュ値を含んでもよい。ダウンロード要求に含まれる情報は目標インデックス値を含む場合、端末は直接この目標インデックス値によりブロックチェーンから記憶対象ファイルに対応するアドレス集合暗号文を抽出することができ、ダウンロード要求に含まれる情報がアドレス集合暗号文に対応するハッシュ値を含む場合、記憶対象ファイルに対応するアドレス集合暗号文及びアドレス集合暗号文に対応するハッシュ値をブロック・チェーン・ネットワークに記憶するとき、ハッシュ値に対応する目標インデックス値を生成しているため、端末はダウンロード要求を受信し、ブロック・チェーン・ネットワークから記憶対象ファイルに対応するアドレス集合暗号文を抽出する必要がある場合、まずダウンロード要求に含まれるアドレス集合暗号文に対応するハッシュ値に基づき、目標インデックス値を決定し、さらにこの目標インデックス値によりブロック・チェーン・ネットワークから記憶対象ファイルに対応するアドレス集合暗号文を抽出することができる。
ステップS106は、目標インデックス値をブロック・チェーン・ネットワークに送信し、ブロック・チェーン・ネットワークから返信されたアドレス集合暗号文を受信する。
本出願の実施例において、端末はユーザから送信されたダウンロード要求を受信し、ダウンロード要求に含まれる目標インデックス値を得た後、目標インデックス値をブロック・チェーン・ネットワークに送信し、さらにブロックチェーンから返信された記憶対象ファイルに対応するアドレス集合暗号文を受信することができる。
ステップS107は、アドレス集合暗号文を復号化し、記憶対象ファイルに対応するアドレス集合を得、アドレス集合はM個のアドレス情報を含む。
本出願の実施例において、端末はブロック・チェーン・ネットワークから返信された記憶対象ファイルに対応するアドレス集合暗号文を受信した後、受信したアドレス集合暗号文を復号化することができ、さらに記憶対象ファイルに対応するアドレス集合を得、アドレス集合はM個のアドレス情報を含む。
さらに、本出願の実施例において、端末はM個のアドレス情報を含む記憶対象ファイルに対応するアドレス集合を得た後、M個のアドレス情報をIPFSに送信し、さらに記憶対象ファイルに対応するN個のサブファイルを受信することができる。
本出願の実施例において、端末はアドレス集合暗号文を復号化し、M個のアドレス情報を含む記憶対象ファイルに対応するアドレス集合を得た後、M個のアドレス情報をIPFSに送信し、さらにIPFSから返信された記憶対象ファイルに対応するN個のサブファイルを受信する。
さらに、本出願の実施例において、端末はIPFSから返信された記憶対象ファイルに対応するN個のサブファイルを受信した後、さらにN個のサブファイルを併合することで、記憶対象ファイルを得ることができる。
本出願の実施例において、端末はM個のアドレス情報をIPFSに送信し、IPFSから返信された記憶対象ファイルに対応するN個のサブファイルを受信した後、さらにN個のサブファイルを併合操作し、記憶対象ファイルを得る。
前記取得部501は記憶対象ファイルを取得するように構成され、
前記処理部502は、前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得るように構成され、Nは1以上の整数であり、
前記送信部503は、前記N個のサブファイルをIPFSに送信するように構成され、
前記受信部504は、前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信するように構成され、Mは1以上であり、且つN以下の整数であり、
前記生成部505は、前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成するように構成され、
前記暗号化部506は、前記アドレス集合を暗号化し、アドレス集合暗号文を得るように構成され、
前記送信部503は、前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信するように構成され、
前記受信部504は、さらに、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信するように構成され、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられる。
さらに、本出願の実施例において、前記処理部502は、さらに具体的には、前記記憶対象ファイルに対応する命令パラメータを決定し、前記命令パラメータに従って、前記記憶対象ファイルを前記N個のサブファイルに分割するように構成される。
さらに、本出願の実施例において、前記暗号化部506は、具体的には、公開鍵と秘密鍵とを含む非対称鍵対をランダムに生成し、前記公開鍵により前記記憶対象ファイルに対応する前記アドレス集合を暗号化し、前記アドレス集合暗号文を得るように構成される。
さらに、本出願の実施例において、前記受信部504は、具体的には、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信するように構成される。
さらに、本出願の実施例において、前記記憶部507は、前記アドレス集合暗号文及び前記ハッシュ値をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信した後、前記目標インデックス値及び前記ハッシュ値を記憶するように構成される。
さらに、本出願の実施例において、前記送信部503は、さらに、前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信するように構成される。
さらに、本出願の実施例において、前記受信部504は、さらに、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信するように構成される。
さらに、本出願の実施例において、前記送信部503は、さらに、前記M個のアドレス情報を前記IPFSに送信するように構成される。
さらに、本出願の実施例において、前記受信部504は、さらに、前記IPFSから返信された前記記憶対象ファイルに対応する前記N個のサブファイルを受信するように構成される。
さらに、本出願の実施例において、前記併合部509は、前記N個のサブファイルを併合操作し、前記記憶対象ファイルを得るように構成される。
さらに、本出願の実施例において、前記ダウンロード要求に前記ハッシュ値が含まれ、前記決定部510は、前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得る前に、前記ハッシュ値に対応する前記目標インデックス値を決定するように構成される。
さらに、本出願の実施例において、前記送信部503は、さらに、前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信するように構成される。
さらに、本出願の実施例において、前記受信部504は、さらに、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信するように構成される。
本発明の実施例において、バス514は通信インターフェース513、プロセッサ511、メモリ512およびこれらのデバイス間の相互通信を接続するためのものである。
本出願の実施例において、メモリ512は命令とデータを記憶するように構成される。
また、本実施例における各機能モジュールは1つの処理ユニットに集積されてもよく、各ユニットが個別で物理的に存在してもよく、2つ以上のユニットが1つのユニットに集積されてもよい。上記集積されたユニットはハードウェアの形式で実現されてもよいし、ソフトウェア機能モジュールの形式で実現されてもよい。
具体的には、本実施例におけるファイル記憶方法に対応するプログラム命令は光ディスク、ハードディスク、Uディスクなどの記憶媒体に記憶することができ、記憶媒体におけるファイル記憶方法に対応するプログラム命令が電子機器に読取又は実行される場合、
記憶対象ファイルを取得して前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得ることであって、Nは1以上の整数であることと、
将前記N個のサブファイルをIPFSに送信し、前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信することであって、Mは1以上であり、且つN以下の整数であることと、
前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成して前記アドレス集合を暗号化し、アドレス集合暗号文を得ることと、
前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信することであって、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられることと、を含む。
これらのコンピュータプログラム命令はコンピュータ又は他のプログラマブルデータ処理装置を特定の方式で動作させるように案内するコンピュータ読み取り可能なメモリに記憶されてもよく、それによりコンピュータ読み取り可能なメモリに記憶された命令は命令装置を含む製造品を生成し、この命令装置は実現フローチャートの1つ以上のフロー及び/又はブロック図の1つ以上のブロックに指定された機能を実現する。
以上は、本出願の好ましい実施例に過ぎず、本出願の保護範囲を限定するものではない。
Claims (20)
- 記憶対象ファイルを取得して前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得ることであって、Nは1以上の整数であることと、
前記N個のサブファイルをIPFSに送信し、前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信することであって、Mは1以上であり、且つN以下の整数であることと、
前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成して前記アドレス集合を暗号化し、アドレス集合暗号文を得ることと、
前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信することであって、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられることと、を含むファイル記憶方法。 - 前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得ることは、
前記記憶対象ファイルに対応するバイト数を決定することと、
前記バイト数に基づき、前記記憶対象ファイルを前記N個のサブファイルに分割することと、を含む請求項1に記載の方法。 - 前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得ることは、
前記記憶対象ファイルに対応する命令パラメータを決定することと、
前記命令パラメータに従って、前記記憶対象ファイルを前記N個のサブファイルに分割することと、を含む請求項1に記載の方法。 - 前記アドレス集合を暗号化し、アドレス集合暗号文を得ることは、
公開鍵と秘密鍵とを含む非対称鍵対をランダムに生成することと、
前記公開鍵により前記記憶対象ファイルに対応する前記アドレス集合を暗号化し、前記アドレス集合暗号文を得ることと、を含む請求項1に記載の方法。 - 前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信することは、
前記アドレス集合暗号文に対応するハッシュ値を生成することと、
前記アドレス集合暗号文及び前記ハッシュ値をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信することと、を含む請求項1に記載の方法。 - 前記アドレス集合暗号文及び前記ハッシュ値をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信した後、前記方法は、さらに、
前記目標インデックス値及び前記ハッシュ値を記憶することを含む請求項5に記載の方法。 - 前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信した後、前記方法は、さらに、
前記目標インデックス値が含まれるダウンロード要求を受信することと、
前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信することと、
前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得ることであって、前記アドレス集合は前記M個のアドレス情報を含むことと、
前記M個のアドレス情報を前記IPFSに送信し、前記IPFSから返信された前記記憶対象ファイルに対応する前記N個のサブファイルを受信することと、
前記N個のサブファイルを併合操作し、前記記憶対象ファイルを得ることと、を含む請求項4に記載の方法。 - 前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得ることは、
前記秘密鍵により前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得ること、を含む請求項7に記載の方法。 - 前記ダウンロード要求に前記ハッシュ値が含まれ、前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得る前に、前記方法は、さらに、
前記ハッシュ値に対応する前記目標インデックス値を決定することと、
前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信することと、を含む請求項7に記載の方法。 - 記憶対象ファイルを取得するように構成される取得部と、
前記記憶対象ファイルに対して分割処理を行い、前記記憶対象ファイルに対応するN個のサブファイルを得るように構成され、Nが1以上の整数である処理部と、
前記N個のサブファイルをIPFSに送信するように構成される送信部と、
前記IPFSから返信された前記N個のサブファイルに対応するM個のアドレス情報を受信するように構成され、Mが1以上であり、且つN以下の整数である受信部と、
前記M個のアドレス情報に基づき、前記記憶対象ファイルに対応するアドレス集合を生成するように構成される生成部と、
前記アドレス集合を暗号化し、アドレス集合暗号文を得るように構成される暗号化部と、を備え、
前記送信部は、さらに、前記アドレス集合暗号文をブロック・チェーン・ネットワークに送信するように構成され、
前記受信部は、さらに、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信するように構成され、前記目標インデックス値は前記アドレス集合暗号文を識別するために用いられる端末。 - 前記処理部は、具体的には、前記記憶対象ファイルに対応するバイト数を決定し、前記バイト数に基づき、前記記憶対象ファイルを前記N個のサブファイルに分割するように構成される請求項10に記載の端末。
- 前記処理部は、さらに具体的には、前記記憶対象ファイルに対応する命令パラメータを決定し、前記命令パラメータに従って、前記記憶対象ファイルを前記N個のサブファイルに分割するように構成される請求項10に記載の端末。
- 前記暗号化部は、具体的には、公開鍵と秘密鍵とを含む非対称鍵対をランダムに生成し、前記公開鍵により前記記憶対象ファイルに対応する前記アドレス集合を暗号化し、前記アドレス集合暗号文を得るように構成される請求項10に記載の端末。
- 前記送信部は、具体的には、前記アドレス集合暗号文に対応するハッシュ値を生成し、前記アドレス集合暗号文及び前記ハッシュ値をブロック・チェーン・ネットワークに送信するように構成され、
前記受信部は、具体的には、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信するように構成される請求項10に記載の端末。 - 前記アドレス集合暗号文及び前記ハッシュ値をブロック・チェーン・ネットワークに送信し、前記ブロック・チェーン・ネットワークから返信された前記ハッシュ値に対応する前記目標インデックス値を受信した後、前記目標インデックス値及び前記ハッシュ値を記憶するように構成される記憶部をさらに備える請求項14に記載の端末。
- 前記端末は、復号化部と併合部とをさらに備え、
前記受信部は、さらに、前記アドレス集合暗号文をブロック・チェーン・ネットワークに記憶し、前記ブロック・チェーン・ネットワークから返信された目標インデックス値を受信した後、前記目標インデックス値が含まれるダウンロード要求を受信するように構成され、
前記送信部は、さらに、前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信するように構成され、
前記受信部は、さらに、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信するように構成され、
前記復号化部は、前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得るように構成され、前記アドレス集合は前記M個のアドレス情報を含み、
前記送信部は、さらに、前記M個のアドレス情報を前記IPFSに送信するように構成され、
前記受信部は、さらに、前記IPFSから返信された前記記憶対象ファイルに対応する前記N個のサブファイルを受信するように構成され、
前記併合部は前記N個のサブファイルを併合操作し、前記記憶対象ファイルを得るように構成される請求項13に記載の端末。 - 前記復号化部は、具体的には、前記秘密鍵により前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得るように構成される請求項16に記載の端末。
- 前記ダウンロード要求に前記ハッシュ値が含まれ、前記端末は、決定部をさらに備え、
前記決定部は、前記アドレス集合暗号文を復号化し、前記記憶対象ファイルに対応する前記アドレス集合を得る前に、前記ハッシュ値に対応する前記目標インデックス値を決定するように構成され、
前記送信部は、さらに、前記目標インデックス値を前記ブロック・チェーン・ネットワークに送信するように構成され、
前記受信部は、さらに、前記ブロック・チェーン・ネットワークから返信された前記アドレス集合暗号文を受信するように構成される請求項16に記載の端末。 - プロセッサと、前記プロセッサによる実行可能な命令を記憶したメモリとを備え、前記命令が前記プロセッサにより実行される時に、請求項1~9の何れか1項に記載の方法を実現する端末。
- プログラムを記憶しており、端末に適用され、前記プログラムがプロセッサにより実行される時に、請求項1~9の何れか1項に記載の方法を実現するコンピュータ読み取り可能な記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911067461.XA CN111104386B (zh) | 2019-11-04 | 2019-11-04 | 一种文件存储方法、终端及存储介质 |
CN201911067461.X | 2019-11-04 | ||
PCT/CN2020/077840 WO2021088278A1 (zh) | 2019-11-04 | 2020-03-04 | 一种文件存储方法、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023500316A true JP2023500316A (ja) | 2023-01-05 |
JP7335440B2 JP7335440B2 (ja) | 2023-08-29 |
Family
ID=70420436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022525637A Active JP7335440B2 (ja) | 2019-11-04 | 2020-03-04 | ファイル記憶方法、端末及び記憶媒体 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220407725A1 (ja) |
EP (1) | EP4047487B1 (ja) |
JP (1) | JP7335440B2 (ja) |
CN (1) | CN111104386B (ja) |
WO (1) | WO2021088278A1 (ja) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111523152B (zh) * | 2020-05-11 | 2021-08-03 | 毕红伟 | 基于区块链的电子证件管理方法、管理网络及电子设备 |
CN111339106B (zh) * | 2020-05-18 | 2020-08-28 | 杭州趣链科技有限公司 | 一种区块链数据索引的方法 |
CN111414434B (zh) * | 2020-05-20 | 2021-09-03 | 华北电力大学 | 基于区块链的数据交易管理网络、交易设备和存储介质 |
CN111782722B (zh) * | 2020-06-02 | 2021-05-18 | 北京海泰方圆科技股份有限公司 | 一种数据管理方法、装置、电子设备及存储介质 |
CN111651408B (zh) * | 2020-06-08 | 2024-05-03 | Oppo广东移动通信有限公司 | 获取数据的方法、装置、终端及存储介质 |
CN111752946B (zh) * | 2020-06-22 | 2021-04-30 | 上海众言网络科技有限公司 | 一种基于分片方式对调研数据进行预处理的方法及装置 |
CN111797417A (zh) * | 2020-07-06 | 2020-10-20 | 上海明略人工智能(集团)有限公司 | 文件的上传方法和装置、存储介质及电子装置 |
CN114244856B (zh) * | 2020-09-09 | 2024-05-10 | 中国联合网络通信集团有限公司 | 基于区块链的网络存储方法、装置、系统及运营商平台 |
CN112084522B (zh) * | 2020-09-28 | 2021-09-21 | 深圳市腾盟技术有限公司 | 数据存储方法、装置、设备及存储介质 |
CN112202779B (zh) * | 2020-09-29 | 2022-08-30 | 深圳壹账通智能科技有限公司 | 基于区块链的信息加密方法、装置、设备及介质 |
CN112133386A (zh) * | 2020-09-29 | 2020-12-25 | 深圳壹账通智能科技有限公司 | 一种基于区块链的信息处理方法、装置、设备及介质 |
CN112434105A (zh) * | 2020-10-16 | 2021-03-02 | 苏州浪潮智能科技有限公司 | 区块链存储的数据持续保存的方法、系统、设备及介质 |
CN112417502B (zh) * | 2020-11-18 | 2022-03-18 | 中国电子科技集团公司第三十研究所 | 基于区块链、去中心化部署的分布式即时通讯系统及方法 |
CN112492580B (zh) * | 2020-11-25 | 2023-08-18 | 北京小米移动软件有限公司 | 信息处理方法及装置、通信设备及存储介质 |
CN112445770A (zh) * | 2020-11-30 | 2021-03-05 | 清远职业技术学院 | 多维乱序存储的超大规模高性能数据库引擎及云服务平台 |
CN112688996A (zh) * | 2020-12-16 | 2021-04-20 | 宁波云麟信息科技有限公司 | 基于区块链的电子存证数据存储方法和电子设备 |
CN112764677B (zh) * | 2021-01-14 | 2022-12-23 | 杭州电子科技大学 | 一种在云存储中增强数据迁移安全性的方法 |
CN112965980A (zh) * | 2021-03-12 | 2021-06-15 | 平安国际智慧城市科技股份有限公司 | 信息存储方法及装置 |
CN113064876B (zh) * | 2021-03-25 | 2024-06-04 | 北京知料科技有限公司 | 一种ipfs文件处理方法 |
CN114968964B (zh) * | 2021-05-24 | 2024-03-19 | 中移互联网有限公司 | 一种文件处理方法、装置及电子设备 |
CN113342763B (zh) * | 2021-06-03 | 2022-07-15 | 上海和数软件有限公司 | 基于ipfs的分布式数据同步方法、设备及介质 |
CN113726873B (zh) * | 2021-08-27 | 2022-11-01 | 平安科技(深圳)有限公司 | 基于区块链的文件处理方法、系统、设备和存储介质 |
CN113806300B (zh) * | 2021-09-23 | 2023-08-01 | 北京百度网讯科技有限公司 | 数据存储方法、系统、装置、设备及存储介质 |
CN113821478A (zh) * | 2021-11-24 | 2021-12-21 | 南京金宁汇科技有限公司 | 一种基于区块链的大文件存储方法及系统 |
CN114338646B (zh) * | 2021-11-29 | 2024-06-21 | 王建冬 | 文件交互传输方法、装置、设备及存储介质 |
CN113938324A (zh) * | 2021-12-16 | 2022-01-14 | 成都车晓科技有限公司 | 一种基于区块链的车贷信息的安全存储方法 |
CN114398449B (zh) * | 2021-12-29 | 2023-01-06 | 深圳市海清视讯科技有限公司 | 数据处理方法、装置、视频监控系统、存储介质 |
CN114443608B (zh) * | 2022-04-07 | 2022-07-29 | 深圳市星卡科技股份有限公司 | 分布式文件存储及下载方法、装置、设备及介质 |
CN114911869A (zh) * | 2022-05-13 | 2022-08-16 | 北京航星永志科技有限公司 | 一种数据及文件存储系统、方法、装置及电子设备 |
US20230379180A1 (en) * | 2022-05-18 | 2023-11-23 | Jpmorgan Chase Bank, N.A. | System and method for fact verification using blockchain and machine learning technologies |
CN115174553A (zh) * | 2022-06-06 | 2022-10-11 | 蚂蚁区块链科技(上海)有限公司 | 一种文件传输的方法及装置 |
WO2024001304A1 (zh) * | 2022-06-30 | 2024-01-04 | 华为云计算技术有限公司 | 一种数据处理方法及相关设备 |
CN115118734A (zh) * | 2022-07-11 | 2022-09-27 | 京东科技信息技术有限公司 | 文件共享方法、装置及设备 |
CN115269511A (zh) * | 2022-07-25 | 2022-11-01 | 北京航星永志科技有限公司 | 一种泛电子文件封装方法及装置 |
CN115438383B (zh) * | 2022-11-09 | 2023-02-14 | 南京邮电大学 | 基于区块链通道技术的临床试验数据上传及共享方法 |
US12015744B1 (en) * | 2023-06-20 | 2024-06-18 | Open Text Sa Ulc | Systems and methods for large document transfer and decentralized storage |
CN116527691B (zh) * | 2023-06-27 | 2023-11-03 | 天津中远海运散运数字科技有限公司 | 一种船岸数据的同步方法、装置、设备和介质 |
CN116915510B (zh) * | 2023-09-13 | 2023-12-01 | 北京数盾信息科技有限公司 | 一种基于高速加密算法的分布式存储系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018081464A (ja) * | 2016-11-15 | 2018-05-24 | 富士通株式会社 | 通信方法、装置、及びプログラム |
JP2019153260A (ja) * | 2018-03-05 | 2019-09-12 | メタップス・プラス・インコーポレイテッドMetaps Plus Inc. | 共有経済のための分散型台帳装置及び分散型台帳方法 |
JP2020088421A (ja) * | 2018-11-15 | 2020-06-04 | 富士通株式会社 | 通信装置、通信方法、および通信プログラム |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2017240796A1 (en) * | 2016-03-31 | 2018-10-25 | Clause, Inc. | System and method for creating and executing data-driven legal contracts |
US10491378B2 (en) * | 2016-11-16 | 2019-11-26 | StreamSpace, LLC | Decentralized nodal network for providing security of files in distributed filesystems |
CN106686008B (zh) * | 2017-03-03 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 信息存储方法及装置 |
WO2019124610A1 (ko) * | 2017-12-21 | 2019-06-27 | 문인식 | 블록체인을 이용한 개인정보 분리 후 분산 저장 및 조합을 통한 인증 방법 |
CN109243583B (zh) * | 2018-07-09 | 2020-05-12 | 研境信息科技(上海)有限公司 | 基于区块链的医疗影像数据去中心化管理的方法及设备 |
CN108876383A (zh) * | 2018-08-27 | 2018-11-23 | 广东工业大学 | 一种基于区块链的数据交易方法、装置及设备 |
CN109151031B (zh) * | 2018-08-28 | 2022-08-26 | 北京奇虎科技有限公司 | 基于区块链的合约处理方法及装置 |
CN109493055B (zh) * | 2018-11-28 | 2022-09-13 | 深圳力维智联技术有限公司 | 基于区块链的入网区块链设备、数据处理方法及装置 |
CN109886692B (zh) * | 2019-03-08 | 2021-05-07 | 泰康保险集团股份有限公司 | 基于区块链的数据传输方法、装置、介质及电子设备 |
CN109831527B (zh) * | 2019-03-13 | 2021-12-28 | 试金石信用服务有限公司 | 文件处理方法、用户端、服务器及可读存储介质 |
CN110032545A (zh) * | 2019-03-27 | 2019-07-19 | 远光软件股份有限公司 | 基于区块链的文件存储方法、系统及电子设备 |
CN110062034B (zh) * | 2019-04-01 | 2021-11-12 | 中科天御(苏州)科技有限公司 | 一种区块链大文件安全存储方法及系统 |
CN110083606B (zh) * | 2019-04-25 | 2021-06-08 | 深圳市豪斯莱科技有限公司 | 跨链存储方法、终端及存储介质 |
CN110099114A (zh) * | 2019-04-30 | 2019-08-06 | 普华云创科技(北京)有限公司 | 区块链和ipfs协议的文件存储方法、系统、终端及存储介质 |
-
2019
- 2019-11-04 CN CN201911067461.XA patent/CN111104386B/zh active Active
-
2020
- 2020-03-04 JP JP2022525637A patent/JP7335440B2/ja active Active
- 2020-03-04 WO PCT/CN2020/077840 patent/WO2021088278A1/zh unknown
- 2020-03-04 US US17/772,206 patent/US20220407725A1/en active Pending
- 2020-03-04 EP EP20885212.9A patent/EP4047487B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018081464A (ja) * | 2016-11-15 | 2018-05-24 | 富士通株式会社 | 通信方法、装置、及びプログラム |
JP2019153260A (ja) * | 2018-03-05 | 2019-09-12 | メタップス・プラス・インコーポレイテッドMetaps Plus Inc. | 共有経済のための分散型台帳装置及び分散型台帳方法 |
JP2020088421A (ja) * | 2018-11-15 | 2020-06-04 | 富士通株式会社 | 通信装置、通信方法、および通信プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20220407725A1 (en) | 2022-12-22 |
CN111104386B (zh) | 2023-09-01 |
CN111104386A (zh) | 2020-05-05 |
EP4047487A1 (en) | 2022-08-24 |
EP4047487A4 (en) | 2023-05-17 |
JP7335440B2 (ja) | 2023-08-29 |
EP4047487B1 (en) | 2024-05-08 |
WO2021088278A1 (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7335440B2 (ja) | ファイル記憶方法、端末及び記憶媒体 | |
AU2019302940B2 (en) | Implementing a blockchain-based web service | |
JP6581717B2 (ja) | デジタルコンテンツアイテムのマルチプレミスホスティングのためのピアツーピア同期プロトコル | |
US11449478B2 (en) | Blockchain implemented data migration audit trail | |
CN111736775B (zh) | 多源存储方法、装置、计算机系统及存储介质 | |
CN111294379B (zh) | 区块链网络服务平台及其权限托管方法、存储介质 | |
US11539672B2 (en) | Private virtual network replication of cloud databases | |
US11539677B2 (en) | Message-based database replication | |
EP4195624A1 (en) | Data synchronization method and system based on blockchain, and related device | |
US8660996B2 (en) | Monitoring files in cloud-based networks | |
CA3100810C (en) | Multicast encryption scheme for data-ownership platform | |
KR101436406B1 (ko) | P2p기반 업데이트 클라이언트, 서버 장치, 시스템 및 방법 | |
CN112565211B (zh) | 区块链网络服务平台及信息处理方法、设备、存储介质 | |
CN115694802A (zh) | 区块链网络服务平台的随机数生成方法及装置、存储介质 | |
Santangelo | Cloud-native Kubernetes application to efficiently and securely stream and collect real-time data | |
Mattmann et al. | A topical evaluation and discussion of data movement technologies for data-intensive scientific applications | |
JP2024500373A (ja) | 出版-購読型システムにおける鍵ローテーション | |
CN114626100A (zh) | 用于分布式账本技术的共识算法 | |
CN115113800A (zh) | 多集群管理方法、装置、计算设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220428 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230417 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230711 |
|
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: 20230802 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230817 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7335440 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |