JP2023160609A - Analysis service providing method, analysis service providing device, analysis service providing system, and program - Google Patents

Analysis service providing method, analysis service providing device, analysis service providing system, and program Download PDF

Info

Publication number
JP2023160609A
JP2023160609A JP2022071073A JP2022071073A JP2023160609A JP 2023160609 A JP2023160609 A JP 2023160609A JP 2022071073 A JP2022071073 A JP 2022071073A JP 2022071073 A JP2022071073 A JP 2022071073A JP 2023160609 A JP2023160609 A JP 2023160609A
Authority
JP
Japan
Prior art keywords
container
analysis
service providing
public key
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022071073A
Other languages
Japanese (ja)
Inventor
吉紘 大濱
Yoshiko Ohama
亮暢 藤井
Akinobu Fujii
文洋 奥村
Fumihiro Okumura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Central R&D Labs Inc
Original Assignee
Toyota Central R&D Labs Inc
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 Toyota Central R&D Labs Inc filed Critical Toyota Central R&D Labs Inc
Priority to JP2022071073A priority Critical patent/JP2023160609A/en
Publication of JP2023160609A publication Critical patent/JP2023160609A/en
Pending legal-status Critical Current

Links

Landscapes

  • Automatic Analysis And Handling Materials Therefor (AREA)

Abstract

To provide an analysis service providing method, an analysis service providing device, an analysis service providing system, and a program, capable of reducing mistakes in placing samples in containers in analysis services in which samples are encapsulated in containers and delivered.SOLUTION: Disclosed is an analysis service providing method, in which a sample is encapsulated in a container and delivered, and which includes the steps of: associating a secret key and a public key with the container; receiving the analysis request from a requester; electronically signing information on the sample to be encapsulated in the container in response to the analysis request with the secret key associated with the container and transmitting the information to the requester; and requesting a custodian of the container to deliver the container, to which the public key associated with the container or its storage location has been added, to the requester.SELECTED DRAWING: Figure 2

Description

本発明は、分析サービス提供方法、分析サービス提供装置、分析サービス提供システム、及びプログラムに関する。 The present invention relates to an analytical service providing method, an analytical service providing device, an analytical service providing system, and a program.

従来、依頼者から試料を分析者に送付して、分析者が分析結果を依頼者に回答する委託型の分析サービスが提供されている。例えば、特許文献1には、検査分析を希望するユーザより検査分析試料を受け取り、ユーザ試料の検査分析の結果である検査分析データをユーザへ提供する方法が開示されている。 Conventionally, contract-type analysis services have been provided in which a client sends a sample to an analyst, and the analyst returns the analysis results to the client. For example, Patent Document 1 discloses a method of receiving a test analysis sample from a user who desires test analysis and providing the user with test analysis data that is the result of the test analysis of the user sample.

特開2005-43257号公報Japanese Patent Application Publication No. 2005-43257

特許文献1に記載の分析サービスでも、依頼者に対するユーザ認証、分析結果の暗号化、依頼者と分析請負者との間での秘密保持契約など、分析情報の漏洩を防止するためのセキュリティ対策は講じられている。しかしながら、分析者に正しい試料が届けられる必要があるにも拘らず、特許文献1に記載の分析サービスでは、試料の取り違えを防止するための対策は講じられていない。 Even with the analysis service described in Patent Document 1, there are no security measures in place to prevent the leakage of analysis information, such as user authentication for the client, encryption of analysis results, and non-disclosure agreements between the client and the analysis contractor. It is being taught. However, although it is necessary to deliver the correct sample to the analyst, the analysis service described in Patent Document 1 does not take any measures to prevent sample mix-ups.

委託型の分析サービスでは、試料は、その試料のために用意された専用の搬送容器に封入されて分析者に送付される。試料が搬送容器に封入された後は、搬送容器に付加された識別情報により試料が識別されることになる。したがって、依頼者が搬送容器に誤って別の試料を格納して送付すると、そのまま分析が行われてしまい、依頼者は意図した分析結果を得ることができないという問題がある。 In outsourced analysis services, samples are sealed in special transport containers prepared for the sample and sent to analysts. After the sample is sealed in the transport container, the sample is identified by the identification information added to the transport container. Therefore, if the requester mistakenly stores another sample in the transport container and sends it, the analysis will continue as is, and there is a problem in that the requester will not be able to obtain the intended analysis results.

本発明は上記課題に鑑みなされたものであり、本発明の目的は、試料を容器に封入して受け渡しする分析サービスにおいて、容器に対する試料の入れ間違えを低減することができる、分析サービス提供方法、分析サービス提供装置、分析サービス提供システム、及びプログラムを提供することにある。 The present invention has been made in view of the above-mentioned problems, and an object of the present invention is to provide a method for providing an analytical service that can reduce mistakes in placing a sample in a container in an analytical service that encloses a sample in a container and delivers it. The purpose of the present invention is to provide an analytical service providing device, an analytical service providing system, and a program.

本開示の一態様に係る分析サービス提供方法は、試料を容器に封入して受け渡しする分析サービス提供方法であって、秘密鍵及び公開鍵を前記容器に関連付けるステップと、
依頼者から分析依頼を受け付けるステップと、前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信するステップと、前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼するステップと、を含む。
An analysis service providing method according to one aspect of the present disclosure is an analysis service providing method in which a sample is sealed in a container and delivered, the method comprising: associating a private key and a public key with the container;
a step of receiving an analysis request from a requester; a step of electronically signing information regarding a sample to be sealed in the container in response to the analysis request with the private key associated with the container and transmitting the same to the requester; requesting a custodian of the container to deliver the container to which the public key related to the public key or its storage location is added to the requester.

本開示の一態様に係る分析サービス提供装置は、試料を容器に封入して受け渡しする分析サービス提供装置であって、秘密鍵及び公開鍵を前記容器に関連付ける容器登録部と、依頼者から分析依頼を受け付ける依頼受付部と、前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信する署名生成部と、前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼する配送依頼部と、を備える。 An analysis service providing device according to one aspect of the present disclosure is an analysis service providing device that encloses a sample in a container and delivers the sample, and includes a container registration unit that associates a private key and a public key with the container, and an analysis request from a client. a signature generation unit that digitally signs information regarding a sample to be sealed in the container in response to the analysis request using the private key associated with the container and sends it to the requester; and a delivery requesting unit that requests a custodian of the container to deliver the container to which the related public key or its storage location is added to the requester.

本開示の一態様に係る分析サービス提供システムは、本開示の分析サービス提供装置と、電子署名を検証する署名検証部を備える依頼者端末と、を備え、前記署名検証部は、前記容器から読み取られた前記容器に関連する前記公開鍵と前記情報とを用いて、受信した前記電子署名を検証する。 An analysis service providing system according to an aspect of the present disclosure includes an analysis service providing device of the present disclosure and a client terminal including a signature verification unit that verifies an electronic signature, the signature verification unit reading from the container. The received electronic signature is verified using the public key and the information associated with the container.

本開示の一態様に係るプログラムは、試料を容器に封入して受け渡しする分析サービス用のプログラムであって、コンピュータにより、秘密鍵及び公開鍵を前記容器に関連付けるステップと、依頼者から分析依頼を受け付けるステップと、前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信するステップと、前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼するステップと、を実行させるためのプログラムである。 A program according to one aspect of the present disclosure is a program for an analysis service that encloses a sample in a container and delivers it, and includes steps of associating a private key and a public key with the container by a computer, and receiving an analysis request from a client. a step of receiving information regarding a sample to be sealed in the container in response to the analysis request, electronically signing the information with the private key associated with the container and transmitting the information to the requester; or requesting a custodian of the container to deliver the container to which the storage location has been added to the requester.

本発明によれば、試料を容器に封入して受け渡しする分析サービスにおいて、容器に対する試料の入れ間違えを低減することができる。 According to the present invention, in an analysis service in which a sample is sealed in a container and delivered, it is possible to reduce mistakes in placing a sample in a container.

容器の外観の一例を示す図である。It is a figure showing an example of the appearance of a container. 本発明の概要を説明するための模式図である。FIG. 1 is a schematic diagram for explaining the outline of the present invention. 本発明の第1の実施形態に係る分析サービス提供システムの構成の一例を示す模式図である。1 is a schematic diagram showing an example of the configuration of an analysis service providing system according to a first embodiment of the present invention. サーバの電気的構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of an electrical configuration of a server. 端末装置の電気的構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of an electrical configuration of a terminal device. 本発明の第1の実施形態に係る分析サービス提供システムの処理の流れの一例を示すシーケンス図である。FIG. 2 is a sequence diagram showing an example of the processing flow of the analysis service providing system according to the first embodiment of the present invention. 本発明の分析サービス提供システムの主要部の機能ブロック図である。FIG. 1 is a functional block diagram of the main parts of the analysis service providing system of the present invention. 依頼者端末に表示されるUI画面の一例を示す画面遷移図である。It is a screen transition diagram showing an example of a UI screen displayed on a client terminal. 分析者端末に表示されるUI画面の一例を示す画面遷移図である。It is a screen transition diagram showing an example of a UI screen displayed on an analyst terminal. 容器登録工程の処理の一例を示す模式図である。It is a schematic diagram which shows an example of the process of a container registration process. サーバによる「容器登録処理」の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of "container registration processing" by a server. 容器DBに格納されるデータ構造の一例を示す図表である。It is a chart showing an example of the data structure stored in container DB. 分析依頼/受諾工程の処理の一例を示す模式図である。FIG. 3 is a schematic diagram showing an example of processing of an analysis request/acceptance process. 依頼者端末による「依頼者メイン処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "requester main processing" performed by the requester terminal. 依頼者端末による「新規登録処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "new registration processing" performed by the client terminal. 依頼者端末による「OTP入力処理」の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of "OTP input processing" by a client terminal. サーバによる「分析依頼受付処理」の流れの一例を示すフローチャートである。2 is a flowchart illustrating an example of the flow of "analysis request reception processing" performed by the server. 分析者端末による「分析者メイン処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "analyst main processing" by the analyst terminal. 分析者端末による「分析依頼処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "analysis request processing" by an analyst terminal. 封入指示作成工程の処理の一例を示す模式図である。It is a schematic diagram which shows an example of the process of an enclosure instruction creation process. 分析者端末による「封入指示入力処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "enclosure instruction input processing" by the analyst terminal. サーバによる「署名生成処理」の流れの一例を示すフローチャートである。2 is a flowchart illustrating an example of the flow of "signature generation processing" performed by the server. 試料送付工程の処理の一例を示す模式図である。It is a schematic diagram which shows an example of the process of a sample sending process. 依頼者端末による「依頼済み案件処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "requested matter processing" by the client terminal. 依頼者端末による「容器識別子読み取り処理」の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of "container identifier reading processing" by a client terminal. 依頼者端末による「封入指示表示処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "inclusion instruction display processing" performed by the client terminal. 依頼者端末による「試料情報入力処理」の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of "sample information input processing" by a client terminal. 分析報告工程の処理の一例を示す模式図である。It is a schematic diagram which shows an example of the process of an analysis report process. 分析者端末による「分析報告処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "analysis report processing" by an analyst terminal. サーバによる「分析終了処理」の流れの一例を示すフローチャートである。12 is a flowchart illustrating an example of the flow of "analysis completion processing" performed by the server. 本発明の第2の実施形態に係る分析サービス提供システムの処理の流れの一例を示すシーケンス図である。FIG. 7 is a sequence diagram showing an example of the processing flow of the analysis service providing system according to the second embodiment of the present invention. 本発明の第3の実施形態に係る分析サービス提供システムの追加構成の一例を示す模式図である。FIG. 3 is a schematic diagram showing an example of an additional configuration of an analysis service providing system according to a third embodiment of the present invention. (A)は「1対1」の分析依頼に対応する機能配置を示す模式図であり、(B)は「多対多」の分析依頼に対応する機能配置を示す模式図である。(A) is a schematic diagram showing a functional arrangement corresponding to a "one-to-one" analysis request, and (B) is a schematic diagram showing a functional arrangement corresponding to a "many-to-many" analysis request.

以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。 Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings.

[第1の実施形態]
<発明の概要>
まず、図1を参照して、容器について説明する。
試料を封入して搬送する容器30が登録されると、容器30について秘密鍵と公開鍵とが生成され、公開鍵を表す識別標識が生成される。ここでは識別標識としては、例えばQRコード(登録商標)のような二次元コードやバーコードのような一次元コードが挙げられる。図1に示すように、公開鍵を表す識別標識は、容器に直接刻印する、容器に直接印刷する、容器に埋め込む等により、容器30に対し物理的に取り外し不能な形態で付加されている。これらの識別標識は、光学的又は電磁気的に読み取り可能である。なお、以下では、識別標識として二次元コードを使用し、二次元コードを容器30に刻印する場合について説明する。
[First embodiment]
<Summary of the invention>
First, the container will be explained with reference to FIG.
When the container 30 in which the sample is sealed and transported is registered, a private key and a public key are generated for the container 30, and an identification mark representing the public key is generated. Here, examples of the identification mark include a two-dimensional code such as a QR code (registered trademark) and a one-dimensional code such as a bar code. As shown in FIG. 1, the identification mark representing the public key is physically attached to the container 30 in a non-removable manner by directly marking the container, printing directly on the container, embedding it in the container, or the like. These identification marks can be read optically or electromagnetically. In addition, below, the case where a two-dimensional code is used as an identification mark and the two-dimensional code is engraved on the container 30 is demonstrated.

次に、図2を参照して本発明の概要について説明する。
図2に示すように、依頼者10は分析依頼を行い、分析者14は分析依頼を受諾する。ここでは、依頼者10は2つの試料A、Bについて分析依頼を行い、分析者14は試料A、Bの分析依頼を受諾するものとする。分析者14は、容器30A及び容器30Bを用意し、試料Aに容器30Aを割り当て、試料Bに容器30Bを割り当てる。容器30A及び容器30Bは、依頼者10に配送される。
Next, an overview of the present invention will be explained with reference to FIG.
As shown in FIG. 2, the requester 10 makes an analysis request, and the analyst 14 accepts the analysis request. Here, it is assumed that the client 10 requests the analysis of two samples A and B, and the analyst 14 accepts the request for analysis of the samples A and B. The analyst 14 prepares a container 30A and a container 30B, and assigns the container 30A to the sample A and the container 30B to the sample B. Container 30A and container 30B are delivered to client 10.

分析者14は、容器30Aに封入する試料Aに関する情報を含む封入指示を作成して、依頼者10と分析者14とが保持する共通鍵で暗号化する。封入指示には、試料の名称の外に、封入する試料片の寸法、加工・封入時の留意事項、返送先などが含まれていてもよい。封入指示は、文書には限られず、写真や映像としてもよい。分析者14は、暗号化した封入指示について容器30Aの秘密鍵で電子署名を生成する。なお、後述するサーバ18が介在する場合は、厳密にはサーバ18が電子署名を生成する。同様に、分析者14は、試料Bについても封入指示を作成して暗号化し、暗号化した封入指示について容器30Bの秘密鍵で電子署名を生成する。封入指示の暗号文とその電子署名は、容器30とは別に依頼者10に送信される。 The analyst 14 creates an enclosure instruction containing information regarding the sample A to be enclosed in the container 30A, and encrypts it using a common key held by the client 10 and the analyst 14. In addition to the name of the sample, the enclosing instructions may include dimensions of the sample piece to be enclosed, precautions during processing and enclosing, return address, and the like. The inclusion instructions are not limited to documents, but may also be photographs or videos. The analyst 14 generates an electronic signature for the encrypted enclosing instruction using the private key of the container 30A. Note that if a server 18, which will be described later, is involved, strictly speaking, the server 18 generates the electronic signature. Similarly, the analyst 14 creates and encrypts an enclosing instruction for sample B, and generates an electronic signature for the encrypted enclosing instruction using the private key of the container 30B. The encrypted text of the enclosing instruction and its electronic signature are transmitted to the client 10 separately from the container 30.

依頼者10には、容器30A、容器30B、試料Aの封入指示の暗号文、試料Aの封入指示の暗号文署名(即ち、電子署名)、試料Bの封入指示の暗号文、及び試料Bの封入指示の暗号文署名(即ち、電子署名)が届いている。依頼者10は、容器30Aの公開鍵を読み取り、容器30Aの公開鍵で封入指示の暗号文の真正性を検証する。容器30Aの公開鍵で真正性を検証できるのは、容器30Aの秘密鍵で電子署名された試料Aの封入指示の暗号文だけである。依頼者10は、真正性が検証できた方、即ち、試料Aの封入指示の暗号文を共通鍵で復号し、封入指示に従って容器30Aに試料Aを封入する。 The requester 10 has the container 30A, the container 30B, the encrypted text of the instruction to enclose sample A, the encrypted signature (i.e., electronic signature) of the enclosing instruction of sample A, the encrypted text of the instruction to enclose sample B, and the encrypted text of the instruction to enclose sample B. The ciphertext signature (i.e. electronic signature) of the enclosing instruction has been received. The client 10 reads the public key of the container 30A, and verifies the authenticity of the encrypted text of the enclosing instruction using the public key of the container 30A. The only thing whose authenticity can be verified using the public key of the container 30A is the encrypted text of the instruction to enclose the sample A, which is digitally signed using the private key of the container 30A. The requester 10 decrypts the ciphertext of the enclosing instruction for the sample A whose authenticity has been verified using the common key, and encloses the sample A in the container 30A according to the enclosing instruction.

同様にして、依頼者10は、容器30Bの公開鍵を読み取り、容器30Bの公開鍵で封入指示の暗号文の真正性を検証する。依頼者10は、真正性を検証できた方、即ち、試料Bの封入指示の暗号文を共通鍵で復号し、封入指示に従って容器30Bに試料Bを封入する。 Similarly, the client 10 reads the public key of the container 30B and verifies the authenticity of the encrypted text of the enclosing instruction using the public key of the container 30B. The requester 10 is the one whose authenticity can be verified, that is, decrypts the encrypted text of the enclosing instruction for the sample B using the common key, and encloses the sample B in the container 30B according to the enclosing instruction.

この例で示すように、本開示の分析サービス提供方法は、容器30毎に秘密鍵及び公開鍵を生成し、これを電子割符として用いて、秘密鍵で電子署名された封入指示の真正性を、容器30に物理的に取り外し不能な形態で刻印された公開鍵によってのみ検証できるようにしたものである。これにより、分析者14が容器30に紐づけた封入指示を、安全、確実に依頼者10に伝達することができる。したがって、本開示の分析サービス提供方法は、この構成により、以下の1)~3)の効果を得ることができる。 As shown in this example, the analysis service providing method of the present disclosure generates a private key and a public key for each container 30, uses them as an electronic tally, and verifies the authenticity of the enclosure instruction digitally signed with the private key. , it can be verified only by a public key that is physically imprinted on the container 30 in a non-removable form. Thereby, the enclosing instruction linked to the container 30 by the analyst 14 can be safely and reliably transmitted to the client 10. Therefore, with this configuration, the analysis service providing method of the present disclosure can obtain the following effects 1) to 3).

1)容器30に刻印された公開鍵で検証可能な封入指示のみを依頼者10に提示でき、分析者14の指示を依頼者10が取り違えて、試料が意図しない容器30に封入されるという封入ミスを低減することができる。 1) Enclosing in which only an enclosure instruction that can be verified with the public key engraved on the container 30 can be presented to the client 10, and the client 10 misunderstands the instructions of the analyst 14 and the sample is enclosed in an unintended container 30. Mistakes can be reduced.

2)誤った容器30が依頼者10に配送されても、検証可能な封入指示がなく、誤った容器30への試料が封入されるという封入ミスを低減することができる。 2) Even if the wrong container 30 is delivered to the client 10, there is no verifiable charging instruction, and it is possible to reduce the possibility of a filling error in which the sample is sealed in the wrong container 30.

3)封入指示は暗号化されているので第三者が盗聴することは困難であるし、悪意のある第三者により容器のすり替えや返送先の改ざんが行われても、検証により検知することができる。 3) Since the packaging instructions are encrypted, it is difficult for a third party to eavesdrop on the package, and even if a malicious third party changes the container or falsifies the return address, it will be detected through verification. I can do it.

<分析サービス提供システムの構成>
次に、図3~図5を参照して分析サービス提供システムの構成について説明する。
図3に示すように、分析サービス提供システム1は、依頼者10が使用する依頼者端末12、分析者14が使用する分析者端末16、分析サービス提供装置の一例であるサーバ18、及びストックヤード20で使用される端末装置(図示せず)を備えている。サーバ18は、例えばクラウド上に配置されている。
<Configuration of analysis service provision system>
Next, the configuration of the analysis service providing system will be explained with reference to FIGS. 3 to 5.
As shown in FIG. 3, the analysis service providing system 1 includes a client terminal 12 used by a client 10, an analyst terminal 16 used by an analyst 14, a server 18 which is an example of an analysis service providing device, and a stockyard. 20 is provided with a terminal device (not shown). The server 18 is located on a cloud, for example.

以下では、図3内の点線で囲まれた構成を中心に説明する。分析サービス提供システム1の主要構成は、依頼者10が使用する依頼者端末12とサーバ18である。分析者端末16の機能は、サーバ18が担うこともできる。 In the following, the configuration surrounded by dotted lines in FIG. 3 will be mainly described. The main components of the analysis service providing system 1 are a client terminal 12 used by a client 10 and a server 18. The functions of the analyst terminal 16 can also be performed by the server 18.

分析サービス提供システム1は、任意選択で、分析センタ22のサーバ(図示せず)内に配置される各種外部機器24をさらに備えていてもよい。この例では、外部機器24として、分析装置24A、保管庫24B、及び搬送台車24Cが例示されている。サーバ18は、分析者14からの指示に応じて、これらの外部機器24に、試料が封入された容器30に対する各種の処理(例えば、分析、保管、搬送)を行わせる。 The analysis service providing system 1 may optionally further include various external devices 24 arranged in a server (not shown) of the analysis center 22. In this example, the external equipment 24 is exemplified by an analyzer 24A, a storage 24B, and a transport vehicle 24C. In response to instructions from the analyst 14, the server 18 causes these external devices 24 to perform various processes (eg, analysis, storage, transportation) on the container 30 in which the sample is sealed.

依頼者端末12、分析者端末16、ストックヤード20の端末装置、及び分析センタ22のサーバの各々は、インターネット等の有線・無線の通信回線を介してサーバ18と通信可能に接続されている。また、分析装置24A、保管庫24B、及び搬送台車24Cは、LAN等の有線・無線の通信回線を介して分析センタ22のサーバと通信可能に接続されている。また、依頼者10、分析者14、ストックヤード20、及び分析センタ22の各拠点間では、車両のアイコンで示すように容器30の配送が可能とされている。 The client terminal 12, the analyst terminal 16, the terminal device in the stockyard 20, and the server in the analysis center 22 are each communicably connected to the server 18 via a wired or wireless communication line such as the Internet. Furthermore, the analysis device 24A, the storage 24B, and the transport vehicle 24C are communicably connected to the server of the analysis center 22 via a wired/wireless communication line such as a LAN. Furthermore, the container 30 can be delivered between the client 10, the analyst 14, the stockyard 20, and the analysis center 22, as indicated by the vehicle icon.

ストックヤード20の端末装置は、容器30の登録をサーバ18に要求し、サーバ18から容器30の公開鍵の情報を取得する。ストックヤード20の作業者は、容器30の公開鍵の情報に基づいて、公開鍵を表す二次元コードを容器30に刻印する。また、ストックヤード20の端末装置は、分析者14から容器30の発送指示を受け付け、作業者に容器30の発送を促す。 The terminal device in the stockyard 20 requests the server 18 to register the container 30, and obtains information on the public key of the container 30 from the server 18. A worker at the stockyard 20 stamps a two-dimensional code representing the public key on the container 30 based on the information on the public key of the container 30. Further, the terminal device in the stockyard 20 receives an instruction to ship the container 30 from the analyst 14 and prompts the worker to ship the container 30.

サーバ18は、ストックヤード20の端末装置からの要求に応じて、容器30を登録し、容器30について秘密鍵と公開鍵とを生成して、容器30を識別する容器ID、容器30の秘密鍵と公開鍵、及び容器30の諸元(幅、高さ、深さ等)を互いに関連付けて、後述する容器データベース48Cに格納し、これらの情報を管理している。サーバ18は、依頼者10や分析者14からの照会に応じて容器30の公開鍵を開示する。サーバ18は、その他の各種情報をデータベース(以下、「DB」と略称する。)で管理している。サーバ18は、封入指示の暗号文に電子署名を行う。 In response to a request from a terminal device in the stockyard 20, the server 18 registers the container 30, generates a private key and a public key for the container 30, and generates a container ID for identifying the container 30 and a private key for the container 30. , the public key, and the specifications (width, height, depth, etc.) of the container 30 are associated with each other and stored in a container database 48C, which will be described later, to manage this information. The server 18 discloses the public key of the container 30 in response to an inquiry from the client 10 or the analyst 14. The server 18 manages various other information in a database (hereinafter abbreviated as "DB"). The server 18 applies an electronic signature to the encrypted text of the enclosing instruction.

依頼者端末12は、依頼者10に各種情報の入出力インタフェースを提供する。依頼者端末12は、一時共通鍵を生成し、一時共通鍵で各種情報を暗号化又は復号する。依頼者端末12は、後述するカメラ62で読み取られた容器30の公開鍵で、封入指示の暗号文の真正性を検証する。 The client terminal 12 provides the client 10 with an input/output interface for various information. The client terminal 12 generates a temporary common key and encrypts or decrypts various information using the temporary common key. The client terminal 12 verifies the authenticity of the encrypted text of the enclosing instruction using the public key of the container 30 read by a camera 62, which will be described later.

分析者端末16は、分析者14に各種情報の入出力インタフェースを提供する。分析者端末16は、一時共通鍵を生成し、一時共通鍵で各種情報を暗号化又は復号する。 The analyst terminal 16 provides the analyst 14 with an input/output interface for various information. The analyst terminal 16 generates a temporary common key and encrypts or decrypts various information using the temporary common key.

外部機器24は、分析者14による遠隔分析を支援するための機器である。分析が分析センタ22で行われる場合、サーバ18は、分析者14からの指示に応じて外部機器24に容器30を処理させる。 The external device 24 is a device for supporting remote analysis by the analyst 14. When analysis is performed at analysis center 22, server 18 causes external equipment 24 to process containers 30 in response to instructions from analyst 14.

分析が分析センタ22で行われる場合、封入指示には、返送先として保管庫24Bの所在地が記載されることになる。遠隔分析の作業は、容器30の在庫と保管庫24Bの空き状況とにより律速される。このため、分析者14は、封入指示の作成時に、容器30の在庫だけでなく、保管庫24Bの空き状況も確認する。 If the analysis is performed at the analysis center 22, the location of the storage 24B will be written as the return destination in the enclosing instruction. The rate of remote analysis work is determined by the inventory of containers 30 and the availability of storage 24B. For this reason, the analyst 14 checks not only the inventory of the containers 30 but also the availability of the storage 24B when creating the enclosing instruction.

保管庫24B内の保管場所にはID(以下では、「保管場所ID」という。)が付与されている。サーバ18は、容器30の保管場所IDを、容器30のIDに関連付けて記憶している。保管庫24Bは、単なる倉庫ではなく、試料を封入した容器30の受け入れ、保管等を行う機器としても動作する。サーバ18は、保管庫24Bに指示して、試料を封入した容器30を、保管場所IDで特定された保管場所に格納させる。 An ID (hereinafter referred to as a "storage location ID") is assigned to each storage location in the storage warehouse 24B. The server 18 stores the storage location ID of the container 30 in association with the ID of the container 30. The storage 24B is not just a warehouse, but also operates as a device for receiving and storing containers 30 containing samples. The server 18 instructs the storage 24B to store the container 30 containing the sample in the storage location specified by the storage location ID.

遠隔分析の際には、サーバ18は、分析者14からの指示に応じて、保管庫24Bから試料を封入した容器30を取り出し、搬送台車24Cにより分析装置24Aまで搬送させ、試料を容器30から取り出させて、分析装置24Aに試料をセットさせる。また、サーバ18は、分析者14からの指示に応じて、分析装置24Aにセットされた試料の分析を行わせる。 In the case of remote analysis, the server 18 takes out the container 30 containing the sample from the storage 24B in response to an instruction from the analyst 14, transports the sample to the analysis device 24A by the carrier 24C, and removes the sample from the container 30. The sample is taken out and set in the analyzer 24A. Further, the server 18 causes the analyzer 24A to analyze the sample set in accordance with instructions from the analyst 14.

(サーバの電気的構成)
図4に示すように、サーバ18は、CPU(Central Processing Unit)40、メモリ42、記憶部44、通信部46、及び各種DB48を備えている。CPU40、メモリ42、記憶部44、通信部46、及び各種DB48の各部は、バス49を介して相互に通信可能に接続されている。
(Electrical configuration of server)
As shown in FIG. 4, the server 18 includes a CPU (Central Processing Unit) 40, a memory 42, a storage section 44, a communication section 46, and various DBs 48. The CPU 40 , memory 42 , storage section 44 , communication section 46 , and various DBs 48 are connected via a bus 49 so that they can communicate with each other.

CPU40は、中央演算処理ユニットである。メモリ42は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶部44は、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。 CPU 40 is a central processing unit. The memory 42 is comprised of RAM (Random Access Memory) and temporarily stores programs and data as a work area. The storage unit 44 includes a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), etc., and stores various programs including an operating system and various data.

CPU40は、記憶部44からプログラムを読み出し、メモリ42を作業領域としてプログラムを実行する。また、CPU40は、記憶部44に記憶されているプログラムに従って、上記各部を制御し、各種の演算処理を行う。 The CPU 40 reads a program from the storage unit 44 and executes the program using the memory 42 as a work area. Further, the CPU 40 controls each of the above sections and performs various arithmetic processing according to a program stored in the storage section 44.

通信部46は、他の装置と通信するためのインタフェースである。各種DB48には、
依頼者10のアカウント情報を管理するアカウントDB48A、分析依頼情報を管理する分析依頼DB48B、及び容器情報を管理する容器DB48Cが含まれる。
The communication unit 46 is an interface for communicating with other devices. Various DB48s include
It includes an account DB 48A that manages account information of the client 10, an analysis request DB 48B that manages analysis request information, and a container DB 48C that manages container information.

(端末装置の電気的構成)
図5に示すように、端末装置としては、依頼者端末12と分析者端末16とが設けられている。両者は同じ構成を備えているため、ここでは依頼者端末12の構成について説明する。依頼者端末12は、CPU50、メモリ52、記憶部54、操作入力部56、表示部58、通信部60、及びカメラ62を備えている。CPU50、メモリ52、記憶部54、操作入力部56、表示部58、通信部60、及びカメラ62の各部は、バス64を介して相互に通信可能に接続されている。
(Electrical configuration of terminal device)
As shown in FIG. 5, a client terminal 12 and an analyst terminal 16 are provided as terminal devices. Since both have the same configuration, the configuration of the client terminal 12 will be explained here. The client terminal 12 includes a CPU 50, a memory 52, a storage section 54, an operation input section 56, a display section 58, a communication section 60, and a camera 62. The CPU 50 , the memory 52 , the storage section 54 , the operation input section 56 , the display section 58 , the communication section 60 , and the camera 62 are connected to each other via a bus 64 so that they can communicate with each other.

CPU50、メモリ52、記憶部54、及び通信部60については、サーバ18のCPU40、メモリ42、記憶部44、通信部46と同様である。操作入力部56、例えば、キーボードやマウス等の、各種の情報の入力を行うための装置である。表示部58は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。操作入力部56及び表示部58として、タッチパネルディスプレイを備えていてもよい。カメラ62は、画像を撮像するための装置であり、ここでは二次元コードを読み取るために設けられている。CPU50は、記憶部54に記憶されているプログラムに従って、上記各部を制御し、各種の演算処理を行う。また、記憶部54には、Webブラウザ等のアプリケーションプログラムも記憶されている。 The CPU 50, memory 52, storage section 54, and communication section 60 are the same as the CPU 40, memory 42, storage section 44, and communication section 46 of the server 18. An operation input unit 56 is a device for inputting various information, such as a keyboard and a mouse. The display unit 58 is, for example, a device such as a display or a printer for outputting various information. A touch panel display may be provided as the operation input section 56 and the display section 58. The camera 62 is a device for capturing an image, and is provided here for reading a two-dimensional code. The CPU 50 controls each of the above sections and performs various arithmetic operations according to a program stored in the storage section 54. The storage unit 54 also stores application programs such as a web browser.

なお、図5では、分析者端末16の各部の符号を、括弧内に併記した。併記した通り、分析者端末16は、CPU51、メモリ53、記憶部55、操作入力部57、表示部59、通信部61、及びカメラ63を備えている。 In addition, in FIG. 5, the symbols of each part of the analyst terminal 16 are also written in parentheses. As described, the analyst terminal 16 includes a CPU 51, a memory 53, a storage section 55, an operation input section 57, a display section 59, a communication section 61, and a camera 63.

<分析サービス提供システムの処理の全体的な流れ>
次に、分析サービス提供システムの処理の全体的な流れを説明する。
分析サービス提供システムの処理は、大きく以下の6つの工程に分けることができる。
(1)サーバ18が容器30を登録する容器登録工程
(2)依頼者10が分析依頼を行う分析依頼工程
(3)分析者14が分析依頼を受諾する分析依頼受諾工程
(4)分析者14が封入指示を作成する封入指示作成工程
(5)依頼者10が試料を容器30に封入して分析者14に送付する試料送付工程
(6)分析者14が分析報告を依頼者10に納品する分析報告工程
<Overall process flow of the analysis service provision system>
Next, the overall flow of processing of the analysis service providing system will be explained.
The processing of the analysis service providing system can be roughly divided into the following six steps.
(1) Container registration step in which the server 18 registers the container 30 (2) Analysis request step in which the requester 10 requests an analysis (3) Analysis request acceptance step in which the analyst 14 accepts the analysis request (4) Analyst 14 (5) Sample delivery step (6) The analyst 14 delivers the analysis report to the client 10. Analysis report process

まず、図6のシーケンス図を参照して分析サービス提供システムの処理の流れを概略的に説明する。なお、ここでは、処理の主体を概念的に表し、依頼者端末12を「依頼者10」、分析者端末16を「分析者14」、ストックヤード20の端末装置を「ストックヤード20」と称する。 First, the flow of processing of the analysis service providing system will be schematically explained with reference to the sequence diagram of FIG. Note that here, the main body of the processing is conceptually represented, and the client terminal 12 is referred to as the "requester 10," the analyst terminal 16 is referred to as the "analyst 14," and the terminal device in the stockyard 20 is referred to as the "stockyard 20." .

(1)の容器登録工程では、ストックヤード20がサーバ18に容器登録を要求する(S2)。サーバ18は、ストックヤード20からの要求に応じて容器30を登録し、容器30の秘密鍵・公開鍵(以下では、「容器秘密鍵」、「容器公開鍵」という。)を生成して、各鍵の情報を容器DB48Cに格納する(S4)。サーバ18は、容器公開鍵をストックヤード20に提供する(S6)。ストックヤード20は、容器公開鍵を表す二次元コードを生成し、容器30に刻印する(S8)。 In the container registration step (1), the stockyard 20 requests container registration from the server 18 (S2). The server 18 registers the container 30 in response to a request from the stockyard 20, generates a private key and a public key for the container 30 (hereinafter referred to as a "container private key" and a "container public key"). Information on each key is stored in the container DB 48C (S4). The server 18 provides the container public key to the stockyard 20 (S6). The stockyard 20 generates a two-dimensional code representing the container public key and stamps it on the container 30 (S8).

(2)の分析依頼工程では、依頼者10は、サーバ18に依頼開始を要求する(S10)。サーバ18は、分析依頼の受け付けを開始し、依頼者10からの要求に応答して、一時共通鍵を生成するための一時共通鍵パラメータを依頼者10に送信する(S12)。依頼者10は、一時共通鍵を生成し、分析依頼を作成して一時共通鍵で暗号化する(S14)。依頼者10は、分析依頼の暗号文をサーバ18に送信する(S16)。なお、依頼者10は、試料に関する試料情報を一時共通鍵で暗号化して、分析依頼に含めてもよい。 In the analysis request step (2), the requester 10 requests the server 18 to start the request (S10). The server 18 starts accepting analysis requests, and in response to the request from the client 10, transmits temporary common key parameters for generating a temporary common key to the client 10 (S12). The client 10 generates a temporary common key, creates an analysis request, and encrypts it with the temporary common key (S14). The client 10 transmits the ciphertext of the analysis request to the server 18 (S16). Note that the requester 10 may encrypt sample information regarding the sample using a temporary common key and include it in the analysis request.

(3)分析依頼受諾工程では、分析者14は、サーバ18に分析依頼のクエリを要求する(S18)。サーバ18は、分析者14からの要求に応答して、一時共通鍵パラメータを分析者14に送信する(S20)。分析者14は、一時共通鍵を生成する(S22)。分析者14は、サーバ18から分析依頼の暗号文を取得する(S24)。分析者14は、分析依頼の暗号文を一時共通鍵で復号して閲覧する(S26)。 (3) In the analysis request acceptance step, the analyst 14 requests an analysis request query from the server 18 (S18). The server 18 transmits the temporary common key parameter to the analyst 14 in response to the request from the analyst 14 (S20). The analyst 14 generates a temporary common key (S22). The analyst 14 obtains the ciphertext of the analysis request from the server 18 (S24). The analyst 14 decrypts the ciphertext of the analysis request using the temporary common key and views it (S26).

(4)の封入指示作成工程では、分析者14は、封入指示を作成して一時共通鍵で暗号化する(S26)。分析者14は、容器30をサーバ18に発注する(S28)。サーバ18は、ストックヤード20に、分析者14が選定した容器30の発送を指示する(S30)。分析者14は、封入指示の暗号文をサーバ18に送信する(S32)。サーバ18は、共有情報(封入指示の暗号文及び容器公開鍵)のハッシュ値を算出して、容器秘密鍵で電子署名を生成する(S34)。サーバ18は、封入指示の暗号文と電子署名とを依頼者10に送信する(S36)。 In the inclusion instruction creation step (4), the analyst 14 creates an inclusion instruction and encrypts it with a temporary common key (S26). The analyst 14 orders the container 30 from the server 18 (S28). The server 18 instructs the stockyard 20 to ship the container 30 selected by the analyst 14 (S30). The analyst 14 transmits the encrypted text of the enclosing instruction to the server 18 (S32). The server 18 calculates a hash value of the shared information (ciphertext of the enclosing instruction and the container public key) and generates an electronic signature using the container private key (S34). The server 18 transmits the encrypted text and electronic signature of the enclosing instruction to the client 10 (S36).

(5)の試料送付工程では、ストックヤード20から依頼者10に容器30が送付される(S38)。依頼者10は、容器30から容器公開鍵を読み取って、受信した封入指示の暗号文と組み合わせて共有情報を構成してハッシュ値を算出し、ハッシュ値と電子署名とを容器公開鍵で検証する(S40)。依頼者10は、一時共通鍵で封入指示の暗号文を復号し、封入指示に従って容器30に試料を封入する(S42)。依頼者10は、試料を封入した容器30を、分析者14に送付する(S44)。なお、依頼者10は、試料に関する試料情報を一時共通鍵で暗号化して、分析者14に送信してもよい。 In the sample sending step (5), the container 30 is sent from the stockyard 20 to the client 10 (S38). The requester 10 reads the container public key from the container 30, combines it with the encrypted text of the received enclosing instruction to form shared information, calculates a hash value, and verifies the hash value and the electronic signature using the container public key. (S40). The client 10 decrypts the encrypted text of the enclosing instruction using the temporary common key, and encloses the sample in the container 30 according to the enclosing instruction (S42). The client 10 sends the container 30 containing the sample to the analyst 14 (S44). Note that the requester 10 may encrypt sample information regarding the sample using a temporary common key and transmit it to the analyst 14.

(6)の分析報告工程では、分析者14は、試料を分析し、分析報告を作成して、一時共通鍵で暗号化する(S46)。分析者14は、分析報告の暗号文を依頼者10に納品する(S48)。依頼者10は、分析報告の暗号文を一時共通鍵で復号して閲覧する(S50)。最後に、分析者14は、容器30をストックヤード20に返却する(S52)。 In the analysis report step (6), the analyst 14 analyzes the sample, creates an analysis report, and encrypts it with a temporary common key (S46). The analyst 14 delivers the ciphertext of the analysis report to the client 10 (S48). The client 10 decrypts the ciphertext of the analysis report using the temporary common key and views it (S50). Finally, the analyst 14 returns the container 30 to the stockyard 20 (S52).

図7は、図6に示すシーケンスを実行する分析サービス提供システム1を機能ブロックで表した図である。図7に示すように、分析サービス提供システム1は、通信回線Nにより互いに通信可能とされた、依頼者端末12、分析者端末14及びサーバ18を含んでいる。サーバ18は、秘密鍵及び公開鍵を容器30に関連付ける容器登録部300と、依頼者10から分析依頼を受け付ける依頼受付部302と、分析依頼に応じて容器30に封入する試料に関する情報を容器30に関連する秘密鍵で電子署名して依頼者10に送信する署名生成部304と、容器30に関連する公開鍵(又はその格納先)が付加された容器30を、依頼者10に配送するように容器30の保管者に依頼する配送依頼部306と、を備えている。サーバ18は、Webサーバとしての機能をも果たすものである。 FIG. 7 is a diagram showing the analysis service providing system 1 that executes the sequence shown in FIG. 6 using functional blocks. As shown in FIG. 7, the analysis service providing system 1 includes a client terminal 12, an analyst terminal 14, and a server 18 that can communicate with each other via a communication line N. The server 18 includes a container registration section 300 that associates a private key and a public key with a container 30, a request reception section 302 that receives an analysis request from a requester 10, and a container 30 that stores information regarding a sample to be sealed in the container 30 in response to an analysis request. a signature generation unit 304 that sends an electronic signature with a private key associated with the container 30 to the client 10; and a signature generation unit 304 that sends an electronic signature with a private key associated with the container 30 to the client 10; and a delivery requesting unit 306 that makes a request to the custodian of the container 30. The server 18 also functions as a web server.

依頼者端末12は、インタフェース提供部310、暗号化・復号部312、及び署名検証部314を備えている。分析者端末16は、インタフェース提供部320及び暗号化・復号部322を備えている。インタフェース提供部310及び320は、ユーザインタフェースを提供する。暗号化・復号部312及び322は、情報の暗号化又は復号を行う。署名検証部314は、公開鍵と署名対象の情報とに基づいて電子署名を検証する。インタフェース提供部310及び320の各々は、Webブラウザとしての機能を果たすものである。 The client terminal 12 includes an interface providing section 310, an encryption/decryption section 312, and a signature verification section 314. The analyst terminal 16 includes an interface providing section 320 and an encryption/decryption section 322. Interface providing units 310 and 320 provide user interfaces. The encryption/decryption units 312 and 322 encrypt or decrypt information. The signature verification unit 314 verifies the electronic signature based on the public key and the information to be signed. Each of the interface providing units 310 and 320 functions as a web browser.

<UI画面の遷移>
図8に示すように、依頼者端末12の表示部58に表示されるUI画面には、依頼者メイン画面100、新規依頼画面110、OTP入力画面120、依頼済み案件画面130、容器識別子読み取り画面140、封入指示表示画面150、及び試料情報入力画面160を備えている。これらの画面は、矢印で示したように、特定の選択が成されることにより次の画面に遷移する。各画面の詳細については後述する。
<UI screen transition>
As shown in FIG. 8, the UI screen displayed on the display unit 58 of the client terminal 12 includes a client main screen 100, a new request screen 110, an OTP input screen 120, a requested project screen 130, and a container identifier reading screen. 140, an enclosure instruction display screen 150, and a sample information input screen 160. These screens transition to the next screen when a specific selection is made, as indicated by arrows. Details of each screen will be described later.

図9に示すように、分析者端末16の表示部59に表示されるユーザインタフェース(以下、「UI」と略称する。)画面には、分析者メイン画面170、分析依頼画面180、封入指示入力画面190、及び分析報告入力画面200を備えている。これらの画面は、矢印で示したように、特定の選択が成されることにより次の画面に遷移する。各画面の詳細については後述する。 As shown in FIG. 9, the user interface (hereinafter abbreviated as "UI") screen displayed on the display unit 59 of the analyst terminal 16 includes an analyst main screen 170, an analysis request screen 180, and an enclosure instruction input screen. It includes a screen 190 and an analysis report input screen 200. These screens transition to the next screen when a specific selection is made, as indicated by arrows. Details of each screen will be described later.

<分析サービス提供システムの各処理工程>
以下では、図8及び図9に示すUI画面も参照しながら、(1)容器登録工程、(2)分析依頼工程、(3)分析依頼受諾工程、(4)封入指示作成工程、(5)試料送付工程、及び(6)分析報告工程の各々について詳細に説明する。
<Each processing step of the analysis service provision system>
Below, while also referring to the UI screens shown in FIGS. 8 and 9, (1) container registration process, (2) analysis request process, (3) analysis request acceptance process, (4) enclosure instruction creation process, (5) Each of the sample sending process and (6) analysis reporting process will be explained in detail.

サーバ18が提供する分析サービスは、HTTPSプロトコルで閲覧可能なWebサイトを窓口としており、サーバ18はWebサーバとして機能する。依頼者端末12及び分析者端末16の各々は、Webブラウザを介して各種UI画面を表示し、各種UI画面への操作を受け付ける。即ち、依頼者端末12のCPU50とサーバ18のCPU40とが協働して、依頼者10にユーザインタフェースを提供する。同様に、分析者端末16のCPU51とサーバ18のCPU40とが協働して、分析者14にユーザインタフェースを提供する。 The analysis service provided by the server 18 uses a website that can be viewed using the HTTPS protocol, and the server 18 functions as a web server. Each of the client terminal 12 and the analyst terminal 16 displays various UI screens via a web browser and accepts operations on the various UI screens. That is, the CPU 50 of the client terminal 12 and the CPU 40 of the server 18 cooperate to provide the client 10 with a user interface. Similarly, the CPU 51 of the analyst terminal 16 and the CPU 40 of the server 18 cooperate to provide the analyst 14 with a user interface.

(容器登録工程)
次に、容器登録工程について具体的に説明する。
図10に示すように、ストックヤード20からサーバ18に容器30の登録が要求されると、サーバ18で容器30の秘密鍵・公開鍵が生成され、容器公開鍵のハッシュ値を含むURLがストックヤード20に通知される。ストックヤード20は、容器公開鍵のハッシュ値を含むURLを二次元コードに変換し、レーザ加工により容器30に二次元コードを刻印する。
(Container registration process)
Next, the container registration process will be specifically explained.
As shown in FIG. 10, when the stockyard 20 requests the server 18 to register the container 30, the server 18 generates the private key and public key of the container 30, and the URL containing the hash value of the container public key is stored. Yard 20 is notified. The stockyard 20 converts the URL including the hash value of the container public key into a two-dimensional code, and stamps the two-dimensional code on the container 30 by laser processing.

-サーバの処理-
ここで、図11に示すフローチャートを参照してサーバ18のCPU40により実行される「容器登録処理」について詳しく説明する。「容器登録処理」は、容器30の登録が要求されると開始される。まず、ステップS100で、サーバ18のCPU40は、容器秘密鍵と容器公開鍵のペアを生成する。容器秘密鍵と容器公開鍵は、例えばエドワーズ曲線デジタル署名アルゴリズム(EdDSA:Edwards-curve Digital Signature Algorithm)により生成することができる。
-Server processing-
Here, the "container registration process" executed by the CPU 40 of the server 18 will be described in detail with reference to the flowchart shown in FIG. The "container registration process" is started when registration of the container 30 is requested. First, in step S100, the CPU 40 of the server 18 generates a pair of a container private key and a container public key. The container private key and the container public key can be generated by, for example, the Edwards-curve Digital Signature Algorithm (EdDSA).

次に、ステップS102で、CPU40は、容器秘密鍵及び容器公開鍵を、容器DB48Cに格納する。容器秘密鍵及び容器公開鍵の各々を、例えばBASE64方式で文字列化し、例えばSHA-256(Secure Hash Algorithm 256-bit)等のハッシュ関数を用いて、容器公開鍵の文字列からハッシュ値を算出する。この容器公開鍵のハッシュ値が、容器IDとされる。 Next, in step S102, the CPU 40 stores the container private key and the container public key in the container DB 48C. Each of the container private key and the container public key is converted into a string using the BASE64 method, and a hash value is calculated from the container public key string using a hash function such as SHA-256 (Secure Hash Algorithm 256-bit). do. The hash value of this container public key is used as the container ID.

容器DB48Cは、図12の表1に示すように、容器公開鍵のハッシュ値(即ち、容器ID)をキーとするキーバリュー方式により、容器公開鍵の文字列、容器秘密鍵の文字列、及び容器の諸元の各値を格納している。或いは、表2に示すように、任意の短縮名をキーとして、容器公開鍵の文字列、容器秘密鍵の文字列、容器公開鍵のハッシュ値(footprint)、及び容器の諸元の各値をバリューとしてもよい。 As shown in Table 1 of FIG. 12, the container DB 48C stores the character string of the container public key, the character string of the container private key, and Stores each value of the container specifications. Alternatively, as shown in Table 2, using an arbitrary short name as a key, enter the character string of the container public key, the character string of the container private key, the hash value (footprint) of the container public key, and the values of the container specifications. It can also be used as a value.

例えば、表1では、キー(key)である容器公開鍵のハッシュ値("12c70824abb1a7e441e04257…")には、容器公開鍵の文字列(“Pubkey”: ”MCowBQYDK2VwAyEA2+h9+JCt…”)、容器秘密鍵の文字列(“Privkey”:“MC4CAQAwBQYDK2VwBCIEIK1k…”)、容器の諸元(“Width”:100,“Height”:100,“Depth”:100)の各々がバリュー(value)として関連付けられている。 For example, in Table 1, the hash value of the container public key (“12c70824abb1a7e441e04257…”), which is the key, includes the character string of the container public key (“Pubkey”: ”MCowBQYDK2VwAyEA2+h9+JCt…”), the container secret The key string (“Privkey”: “MC4CAQAwBQYDK2VwBCIEIK1k…”) and the container specifications (“Width”:100, “Height”:100, “Depth”:100) are each associated as a value. .

次に、ステップS104で、CPU40は、例えばハッシュ値を含むURL(または、その短縮URL)を、容器公開鍵を閲覧可能なURLとしてストックヤード20に通知して、「容器登録処理」のルーチンを終了する。 Next, in step S104, the CPU 40 notifies the stockyard 20 of, for example, a URL including the hash value (or its shortened URL) as a URL where the container public key can be viewed, and starts the "container registration process" routine. finish.

なお、サーバ18がWebサーバとして機能し、依頼者10及び分析者14も容器30に刻印された二次元コードを読み取ることで、容器公開鍵を閲覧できるようになる。この通り、容器30に関連する公開鍵は、第三者にも公開されているので、公開鍵が分析者14やその所属組織のものであることを標示できる。 Note that the server 18 functions as a web server, and the client 10 and the analyst 14 can also view the container public key by reading the two-dimensional code stamped on the container 30. As shown, the public key related to the container 30 is disclosed to a third party, so it can be indicated that the public key belongs to the analyst 14 or the organization to which he or she belongs.

(分析依頼工程)
次に、分析依頼工程について具体的に説明する。
図13に示すように、依頼者端末12には、時間ベースのワンタイムパスワード(Time-based One-Time Password、以下では「OTP」と略称する。)を生成するトークン生成器11が予め配布されている。トークン生成器11には、トークン生成器11に固有の固有IDとソルト(salt)文字列とが埋め込まれている。トークン生成器11の内部タイマーの時刻はサーバ18のタイマーの時刻と同期されている。トークン生成器11は、時刻、固有ID、ソルトから、OTPを生成する。なお、パスワードは「PW」と略称する場合がある。
(Analysis request process)
Next, the analysis request process will be specifically explained.
As shown in FIG. 13, a token generator 11 that generates a time-based one-time password (hereinafter abbreviated as "OTP") is distributed in advance to the client terminal 12. ing. A unique ID unique to the token generator 11 and a salt character string are embedded in the token generator 11. The time of the internal timer of the token generator 11 is synchronized with the time of the server 18. The token generator 11 generates an OTP from the time, unique ID, and salt. Note that the password may be abbreviated as "PW" in some cases.

また、ユーザである依頼者10は、分析サービスを利用するためのアカウントを有しており、依頼者10にはユーザIDが予め発行されている。サーバ18は、ユーザID等のアカウント情報をアカウントDB48Aで管理している。アカウントDB48Aにより、依頼者10に配布されたトークン生成器11の固有IDも、ユーザIDに紐づけられている。 Further, the client 10 who is a user has an account for using the analysis service, and a user ID has been issued to the client 10 in advance. The server 18 manages account information such as user IDs in an account DB 48A. The unique ID of the token generator 11 distributed to the client 10 by the account DB 48A is also linked to the user ID.

-依頼者端末の処理-
ここで、図14~図16を参照して依頼者端末12側での処理をより詳細に説明する。これらの処理は、依頼者端末12のCPU50により実行される。
- Processing of client terminal -
Here, the processing on the client terminal 12 side will be explained in more detail with reference to FIGS. 14 to 16. These processes are executed by the CPU 50 of the client terminal 12.

依頼者10が、分析サービスのWebサイト(即ち、サーバ18)にアクセスして、自身のユーザIDを用いてログインすると、図14に示す「依頼者メイン処理」が開始される。まず、ステップS200で、CPU50は、依頼者10の依頼済み案件のリストをサーバ18から取得する。 When the client 10 accesses the analysis service website (ie, server 18) and logs in using his or her user ID, the "client main process" shown in FIG. 14 is started. First, in step S200, the CPU 50 obtains a list of requested projects of the client 10 from the server 18.

次に、ステップS202で、CPU50は、インタフェースとして依頼者メイン画面100を表示する。 Next, in step S202, the CPU 50 displays the client main screen 100 as an interface.

ここで、図8の画面遷移図を参照する。新規依頼の場合には、依頼者10は、依頼者メイン画面100で新規ボタン102を選択する。新規ボタン102が選択されると、UI画面は新規依頼画面110に遷移する。一方、依頼済み案件の場合には、依頼者10は、選択欄104から対象の依頼済み案件を選択する。対象の依頼済み案件が選択されると、UI画面は依頼済み案件画面130に遷移する。 Here, the screen transition diagram in FIG. 8 will be referred to. In the case of a new request, the requester 10 selects the new button 102 on the requester main screen 100. When the new button 102 is selected, the UI screen transitions to a new request screen 110. On the other hand, in the case of a requested case, the requester 10 selects the requested case from the selection column 104. When the target requested matter is selected, the UI screen transitions to a requested matter screen 130.

図14の説明に戻る。次に、ステップS204で、CPU50は、依頼者10の入力に基づいて新規案件か否かを判断する。新規案件の場合はステップS208の「新規依頼処理」に進む。新規案件ではない場合はステップS206に進み、ステップS206で、CPU50は、依頼者10の入力に基づいて依頼済み案件か否かを判断する。依頼済み案件の場合はステップS210の「依頼済み案件処理」に進む。依頼済み案件ではない場合はステップS200に戻って、次のループまで待機する。 Returning to the explanation of FIG. 14. Next, in step S204, the CPU 50 determines whether or not it is a new case based on the input from the client 10. In the case of a new case, the process advances to "new request processing" in step S208. If it is not a new case, the process advances to step S206, and in step S206, the CPU 50 determines whether or not it is a requested case based on the input from the client 10. In the case of a requested matter, the process advances to "requested matter processing" in step S210. If it is not a requested matter, the process returns to step S200 and waits until the next loop.

次に、図15を参照して、図14のステップS208の「新規依頼処理」について説明する。まず、ステップS212で、CPU50は、インタフェースとして新規依頼画面110を表示する。 Next, with reference to FIG. 15, the "new request processing" in step S208 of FIG. 14 will be explained. First, in step S212, the CPU 50 displays the new request screen 110 as an interface.

ここで、図8の画面遷移図を参照する。依頼者10は、新規依頼画面110の依頼内容入力欄112に依頼内容(例えば、依頼内容の文章、写真、映像など)を入力する。入力した内容で依頼する場合には、依頼者10は、送信ボタン114を選択する。送信ボタン114が選択されると、UI画面はOTP入力画面120に遷移する。一方、入力した内容を取り消す場合には、依頼者10は、取り消しボタン116を選択する。入力内容が取り消されると、UI画面は依頼者メイン画面110に戻る。 Here, the screen transition diagram in FIG. 8 will be referred to. The requester 10 inputs the request contents (for example, text, photos, videos, etc. of the request contents) into the request contents input field 112 of the new request screen 110. When making a request with the input contents, the requester 10 selects the send button 114. When the send button 114 is selected, the UI screen transitions to an OTP input screen 120. On the other hand, in order to cancel the input contents, the requester 10 selects the cancel button 116. When the input contents are canceled, the UI screen returns to the client main screen 110.

図15の説明に戻る。次に、ステップS214で、CPU50は、依頼者10の入力に基づいて送信か否かを判断する。送信の場合はステップS218の「OTP入力処理」に進む。送信ではない場合はステップS216に進み、ステップS216で、CPU50は、依頼者10の入力に基づいて取り消しか否かを判断する。取り消しの場合はステップS220の「依頼者メイン処理」に進む。取り消しではない場合はステップS212に戻って、次のループまで待機する。 Returning to the explanation of FIG. 15. Next, in step S214, the CPU 50 determines whether or not to send based on the input from the requester 10. In the case of transmission, the process advances to "OTP input processing" in step S218. If it is not a transmission, the process advances to step S216, and in step S216, the CPU 50 determines whether or not it is a cancellation based on the input from the requester 10. In the case of cancellation, the process advances to "requester main processing" in step S220. If it is not cancelled, the process returns to step S212 and waits until the next loop.

次に、図16を参照して、図15のステップS218の「OTP入力処理」について説明する。まず、ステップS222で、CPU50は、インタフェースとしてOTP入力画面120を表示する。 Next, with reference to FIG. 16, the "OTP input process" in step S218 in FIG. 15 will be described. First, in step S222, the CPU 50 displays the OTP input screen 120 as an interface.

ここで、図8の画面遷移図を参照する。依頼者10は、OTP入力画面120のPW入力欄122に、トークン生成器11で生成されたOTPを入力する。入力した内容でOKな場合には、依頼者10は、送信ボタン124を選択する。一方、入力した内容を取り消す場合には、依頼者10は、取り消しボタン126を選択する。何れの場合も、UI画面は依頼者メイン画面110に戻る。 Here, the screen transition diagram in FIG. 8 will be referred to. The client 10 inputs the OTP generated by the token generator 11 into the PW input field 122 of the OTP input screen 120. If the entered content is OK, the requester 10 selects the send button 124. On the other hand, to cancel the input contents, the requester 10 selects the cancel button 126. In either case, the UI screen returns to the client main screen 110.

図16の説明に戻る。次に、ステップS224で、CPU50は、依頼者10の入力に基づいて送信か否かを判断する。送信の場合はステップS230に進む。送信ではない場合はステップS226に進み、ステップS226で、CPU50は、依頼者10の入力に基づいて取り消しか否かを判断する。取り消しの場合はステップS228の「依頼者メイン処理」に進む。取り消しではない場合はステップS222に戻って、次のループまで待機する。 Returning to the explanation of FIG. 16. Next, in step S224, the CPU 50 determines whether or not to send based on the input from the requester 10. In the case of transmission, the process advances to step S230. If it is not a transmission, the process advances to step S226, and in step S226, the CPU 50 determines whether or not it is a cancellation based on the input from the requester 10. In the case of cancellation, the process advances to "requester main processing" in step S228. If it is not cancelled, the process returns to step S222 and waits until the next loop.

次に、ステップS230で、CPU50は、ユーザIDとOTPとをサーバ18に送信する。なお、依頼者10のユーザIDはログイン時にサーバ18に送信されているが、ステップS230で、ユーザIDをOTPと一緒に再度サーバ18に送信してもよい。サーバ18は、依頼者端末12からOTPを受信すると、共通鍵パラメータを依頼者端末12に送信する。 Next, in step S230, the CPU 50 transmits the user ID and OTP to the server 18. Note that although the user ID of the requester 10 has been sent to the server 18 at the time of login, the user ID may be sent to the server 18 again together with the OTP in step S230. When the server 18 receives the OTP from the client terminal 12, it transmits the common key parameter to the client terminal 12.

次に、ステップS232で、CPU50は、サーバ18から応答があったか否かを判断する。応答があった場合は、ステップS234に進み、応答が無かった場合は、ステップS222に戻る。 Next, in step S232, the CPU 50 determines whether there is a response from the server 18. If there is a response, the process advances to step S234; if there is no response, the process returns to step S222.

次に、ステップS234で、CPU50は、サーバ18から共通鍵パラメータを受信する。続くステップS236で、一時共通鍵を生成する。例えば、サーバ18は、予め定数として保持する初期化ベクトル(IV:initialization vector)を、共通鍵パラメータとして依頼者端末12に送信する。依頼者端末12のCPU50は、Webブラウザにより、OTPと初期化ベクトルとから共通鍵暗号方式(AES:Advanced Encryption Standard)のAES共通鍵を生成する。即ち、第1の実施形態では、一時共通鍵として「AES共通鍵」を用いる。 Next, in step S234, the CPU 50 receives the common key parameter from the server 18. In the following step S236, a temporary common key is generated. For example, the server 18 transmits an initialization vector (IV) held as a constant in advance to the client terminal 12 as a common key parameter. The CPU 50 of the client terminal 12 uses the Web browser to generate an AES common key of the common key encryption system (AES: Advanced Encryption Standard) from the OTP and the initialization vector. That is, in the first embodiment, an "AES common key" is used as the temporary common key.

次に、ステップS238で、CPU50は、分析依頼を一時共通鍵で暗号化する。続くステップS240で、CPU50は、分析依頼の暗号文をサーバ18に送信する。サーバ18は、依頼者端末12から分析依頼の暗号文を受信すると、分析依頼IDを発行して、依頼者端末12に送信する。次に、ステップS242で、CPU50は、分析依頼IDをサーバ18から受信し、記憶部54に一時共通鍵を保存して、ステップS228に戻る。 Next, in step S238, the CPU 50 encrypts the analysis request using the temporary common key. In the following step S240, the CPU 50 transmits the ciphertext of the analysis request to the server 18. When the server 18 receives the ciphertext of the analysis request from the client terminal 12, it issues an analysis request ID and transmits it to the client terminal 12. Next, in step S242, the CPU 50 receives the analysis request ID from the server 18, stores the temporary common key in the storage unit 54, and returns to step S228.

-サーバの処理-
ここで、図17を参照してサーバ18のCPU40により実行される「分析依頼受付処理」について説明する。「分析依頼受付処理」は、依頼者10からの新規案件を受け付けると開始される。まず、ステップS110で、CPU40は、依頼者10からOTPを受信する。次に、ステップS112で、CPU40は、共通鍵パラメータを依頼者10に送信する。次に、ステップS114で、CPU40は、前後時刻で生成され得るOTPを列挙し、トークン生成器11の時刻差分を検出する。
-Server processing-
Here, the "analysis request reception process" executed by the CPU 40 of the server 18 will be described with reference to FIG. 17. The “analysis request reception process” is started when a new case from the client 10 is received. First, in step S110, the CPU 40 receives an OTP from the client 10. Next, in step S112, the CPU 40 transmits the common key parameter to the client 10. Next, in step S114, the CPU 40 enumerates OTPs that can be generated before and after the time, and detects the time difference of the token generator 11.

次に、ステップS116で、依頼者10から分析依頼の暗号文を受信する。次に、ステップS118で、CPU40は、分析依頼IDを発行して、依頼者10に送信する。次に、ステップS120で、CPU40は、作業状態レコードを生成して、作業状態を「未着手」とする。次に、ステップS122で、CPU40は、固有ID、時刻差分、分析依頼の暗号文、及び作業状態レコードを、分析依頼IDに関連付けて分析依頼DB48Bに格納して、「分析依頼受付処理」のルーチンを終了する。 Next, in step S116, the ciphertext of the analysis request is received from the requester 10. Next, in step S118, the CPU 40 issues an analysis request ID and transmits it to the requester 10. Next, in step S120, the CPU 40 generates a work status record and sets the work status to "not started." Next, in step S122, the CPU 40 stores the unique ID, time difference, ciphertext of the analysis request, and work status record in the analysis request DB 48B in association with the analysis request ID, and performs the "analysis request reception process" routine. end.

(分析依頼受諾工程)
次に、分析依頼受諾工程について具体的に説明する。
図13に示すように、分析者14は、Webサイト(即ち、サーバ18)にアクセスして、分析依頼DB48Bをクエリすることができる。分析者14は、分析依頼の暗号文とともに分析依頼DB48Bに格納されている固有IDと時刻差分を用いて、都度ごとに一時共通鍵を生成する。分析者14は、一時共通鍵を用いて分析依頼の暗号文を復号して閲覧する。
(Analysis request acceptance process)
Next, the analysis request acceptance process will be specifically explained.
As shown in FIG. 13, the analyst 14 can access the website (ie, server 18) and query the analysis request DB 48B. The analyst 14 uses the unique ID and time difference stored in the analysis request DB 48B together with the ciphertext of the analysis request to generate a temporary common key each time. The analyst 14 decrypts and views the ciphertext of the analysis request using the temporary common key.

-分析者端末の処理-
ここで、図18、図19を参照して分析者端末16側での処理をより詳細に説明する。これらの処理は、分析者端末16のCPU51により実行される。
- Processing of analyst terminal -
Here, the processing on the analyst terminal 16 side will be explained in more detail with reference to FIGS. 18 and 19. These processes are executed by the CPU 51 of the analyst terminal 16.

分析者14が分析依頼DB48Bをクエリすると、図18に示す「分析者メイン処理」が開始される。まず、ステップS400で、CPU51は、すべての分析依頼のリストをサーバ18から取得する。次に、ステップS402で、CPU51は、インタフェースとして分析者メイン画面170を表示する。 When the analyst 14 queries the analysis request DB 48B, "analyst main processing" shown in FIG. 18 is started. First, in step S400, the CPU 51 obtains a list of all analysis requests from the server 18. Next, in step S402, the CPU 51 displays the analyst main screen 170 as an interface.

ここで、図9の画面遷移図を参照する。分析者14は、すべての依頼一覧選択欄172に表示された分析依頼の中から受諾する分析依頼を選択する。分析者14が受諾する分析依頼を選択すると、UI画面は分析依頼画面180に遷移する。 Here, the screen transition diagram in FIG. 9 will be referred to. The analyst 14 selects the analysis request to be accepted from among the analysis requests displayed in the all request list selection field 172. When the analyst 14 selects an analysis request to accept, the UI screen transitions to an analysis request screen 180.

図18の説明に戻る。次に、ステップS404で、CPU51は、分析依頼が選択されたか否かを判断する。分析依頼が選択されると、ステップS406の「分析依頼処理」に進む。一方、分析依頼が選択されていない場合は、ステップS400に戻って、次のループまで待機する。 Returning to the explanation of FIG. 18. Next, in step S404, the CPU 51 determines whether an analysis request has been selected. When an analysis request is selected, the process advances to step S406, ``analysis request processing.'' On the other hand, if no analysis request has been selected, the process returns to step S400 and waits until the next loop.

次に、図19を参照して、図18のステップS406の「分析処理」について説明する。まず、ステップS408で、CPU51は、分析依頼IDに基づいて、選択された分析依頼の暗号文をサーバ18から取得する。次に、ステップS410で、CPU51は、分析依頼IDに対応する一時共通鍵で、分析依頼の暗号文を復号する。 Next, with reference to FIG. 19, the "analysis process" in step S406 in FIG. 18 will be described. First, in step S408, the CPU 51 obtains the ciphertext of the selected analysis request from the server 18 based on the analysis request ID. Next, in step S410, the CPU 51 decrypts the ciphertext of the analysis request using the temporary common key corresponding to the analysis request ID.

次に、ステップS412で、CPU51は、インタフェースとして分析依頼画面180を表示する。 Next, in step S412, the CPU 51 displays the analysis request screen 180 as an interface.

ここで、図9の画面遷移図を参照する。分析依頼画面180の依頼内容表示欄182には、復号された分析依頼(即ち、依頼内容)が表示され、試料情報表示欄186には、分析依頼に対応する試料情報が表示される。分析者14は、封入指示を入力する場合には封入指示入力ボタン184を選択する。封入指示入力ボタン184が選択されると、UI画面は封入指示入力画面190に遷移する。 Here, the screen transition diagram in FIG. 9 will be referred to. In the request content display field 182 of the analysis request screen 180, the decoded analysis request (ie, request content) is displayed, and in the sample information display field 186, sample information corresponding to the analysis request is displayed. The analyst 14 selects the inclusion instruction input button 184 when inputting an inclusion instruction. When the inclusion instruction input button 184 is selected, the UI screen transitions to an inclusion instruction input screen 190.

分析者14は、分析報告を入力する場合には分析報告入力ボタン188を選択する。分析報告入力ボタン188が選択されると、UI画面は分析報告入力画面200に遷移する。分析者14は、封入指示を入力する場合には封入指示入力ボタン184を選択する。完了する場合には、分析者14により完了ボタン189が選択されて、UI画面は分析者メイン画面170に戻る。 The analyst 14 selects the analysis report input button 188 when inputting an analysis report. When the analysis report input button 188 is selected, the UI screen transitions to an analysis report input screen 200. The analyst 14 selects the inclusion instruction input button 184 when inputting an enclosure instruction. If completed, the analyst 14 selects the finish button 189 and the UI screen returns to the analyst main screen 170.

図19の説明に戻る。次に、ステップS414で、CPU51は、分析者14の入力に基づいて封入指示入力か否かを判断する。封入指示入力の場合はステップS420の「封入指示入力処理」に進む。封入指示入力ではない場合はステップS416に進み、ステップS416で、CPU51は、分析者14の入力に基づいて分析報告入力か否かを判断する。分析報告入力の場合はステップS422の「分析報告入力処理」に進む。分析報告入力ではない場合はステップS418に進み、ステップS418で、CPU51は、分析者14の入力に基づいて完了か否かを判断する。完了の場合は「分析者メイン処理」に戻る。完了ではない場合は、ステップS408に戻って、次のループまで待機する。 Returning to the explanation of FIG. 19. Next, in step S414, the CPU 51 determines based on the input from the analyst 14 whether or not an enclosing instruction has been input. In the case of inputting an enclosing instruction, the process proceeds to step S420, ``enclosing instruction input processing.'' If the input is not an enclosure instruction, the process advances to step S416, and in step S416, the CPU 51 determines whether the input is an analysis report based on the input from the analyst 14. In the case of inputting an analysis report, the process advances to step S422, ``analysis report input processing''. If it is not an analysis report input, the process advances to step S418, and in step S418, the CPU 51 determines whether or not the input is complete based on the input from the analyst 14. If completed, return to "Analyst Main Processing". If not completed, the process returns to step S408 and waits until the next loop.

(封入指示作成工程)
次に、封入指示作成工程について説明する。
図20に示すように、分析者14は、分析依頼の受託開始を決定すると、分析依頼の内容から試料を受け取るために適切な諸元の容器30を容器DB48Cから選択し、サーバ18に選択した容器30を発注する。容器30は複数選択されてもよい。また、分析者14は、封入指示を作成し、一時共通鍵で暗号化して、封入指示の暗号文をサーバ18に送信する。
(Enclosure instruction creation process)
Next, the inclusion instruction creation process will be explained.
As shown in FIG. 20, when the analyst 14 decides to start accepting the analysis request, the analyst 14 selects a container 30 with appropriate specifications from the container DB 48C to receive the sample based on the contents of the analysis request, and sends the selected container to the server 18. Order container 30. A plurality of containers 30 may be selected. Further, the analyst 14 creates an enclosure instruction, encrypts it with a temporary common key, and transmits the encrypted text of the enclosure instruction to the server 18 .

また、容器30を選定するために必要な情報が分析依頼に十分に含まれていない場合には、分析者14は、問い合わせ文を作成して一時共通鍵で暗号化して依頼者10に送付し、分析依頼の更新を促してもよい。 Furthermore, if the analysis request does not contain enough information necessary to select the container 30, the analyst 14 creates an inquiry text, encrypts it with a temporary common key, and sends it to the requester 10. , you may be prompted to update the analysis request.

サーバ18は、分析者14により選定された容器30をストックヤード20に発注する。ストックヤード20は発注を受けて、依頼者10に容器30を配送する。サーバ18は、選択された容器30の容器秘密鍵及び容器公開鍵を取得する。サーバ18は、容器秘密鍵を用いて封入指示の暗号文を含む共有情報の電子署名を生成し、封入指示の暗号文と電子署名とを依頼者10に送信する。 The server 18 orders the container 30 selected by the analyst 14 from the stockyard 20. The stockyard 20 receives the order and delivers the container 30 to the client 10. The server 18 obtains the container private key and container public key of the selected container 30. The server 18 generates an electronic signature of the shared information including the encrypted text of the enclosing instruction using the container private key, and transmits the encrypted text of the enclosing instruction and the electronic signature to the client 10 .

-分析者端末の処理-
ここで、図21を参照して分析者端末16側での処理をより詳細に説明する。これらの処理は、分析者端末16のCPU51により実行される。
- Processing of analyst terminal -
Here, the processing on the analyst terminal 16 side will be explained in more detail with reference to FIG. 21. These processes are executed by the CPU 51 of the analyst terminal 16.

上述した通り、図9に示す分析依頼画面180で封入指示入力184が選択されると、図21に示す「封入指示入力処理」が開始される。まず、ステップS426で、CPU51は、容器IDを初期値(null)で初期化する。次に、ステップS428で、CPU51は、利用可能な容器30のリストをサーバ18から取得する。 As described above, when the inclusion instruction input 184 is selected on the analysis request screen 180 shown in FIG. 9, the "inclusion instruction input process" shown in FIG. 21 is started. First, in step S426, the CPU 51 initializes the container ID with an initial value (null). Next, in step S428, the CPU 51 obtains a list of available containers 30 from the server 18.

次に、ステップS430で、CPU51は、インタフェースとして封入指示入力画面190を表示する。 Next, in step S430, the CPU 51 displays the inclusion instruction input screen 190 as an interface.

ここで、図9の画面遷移図を参照する。分析者14が、分析依頼画面180で封入指示入力184を選択すると、UI画面は封入指示入力画面190に遷移する。封入指示入力画面190の容器一覧選択欄192には選択可能な容器30が一覧表示される。分析者14は、容器30を選択して、その容器30に試料を封入するために封入指示を封入指示入力欄194に入力する。分析者14が、送信ボタン196を選択すると、封入指示がサーバ18に送信され、UI画面は分析者メイン画面170に戻る。また、分析者14が、取り消しボタン198を選択すると入力が取り消されて、UI画面は分析者メイン画面170に戻る。 Here, the screen transition diagram in FIG. 9 will be referred to. When the analyst 14 selects inclusion instruction input 184 on the analysis request screen 180, the UI screen transitions to an inclusion instruction input screen 190. A list of selectable containers 30 is displayed in the container list selection column 192 of the enclosure instruction input screen 190. The analyst 14 selects a container 30 and inputs an enclosing instruction into the enclosing instruction input field 194 in order to enclose a sample in the container 30. When the analyst 14 selects the send button 196, the enclosing instruction is sent to the server 18, and the UI screen returns to the analyst main screen 170. Furthermore, when the analyst 14 selects the cancel button 198, the input is canceled and the UI screen returns to the analyst main screen 170.

図21の説明に戻る。次に、ステップS432で、CPU51は、分析者14の入力に基づいて容器30が選択されたか否かを判断する。容器が選択された場合はステップS438に進み、ステップS438で選択された容器30の容器IDを容器IDとして設定して、ステップS430に戻る。一方、容器が選択されていない場合は、ステップS434に進む。 Returning to the explanation of FIG. 21. Next, in step S432, the CPU 51 determines whether the container 30 has been selected based on the input from the analyst 14. If a container is selected, the process advances to step S438, sets the container ID of the container 30 selected in step S438 as the container ID, and returns to step S430. On the other hand, if no container is selected, the process advances to step S434.

次に、ステップS434で、CPU51は、分析者14の入力に基づいて送信か否かを判断する。送信の場合はステップS442に進む。送信ではない場合はステップS436に進み、ステップS436で、CPU51は、分析者14の入力に基づいて取り消しかを判断する。取り消しの場合は「分析依頼処理」に戻る。取り消しではない場合は、ステップS426に戻って、次のループまで待機する。 Next, in step S434, the CPU 51 determines whether or not to transmit based on the input from the analyst 14. In the case of transmission, the process advances to step S442. If it is not a transmission, the process advances to step S436, and in step S436, the CPU 51 determines whether to cancel based on the input from the analyst 14. In case of cancellation, return to "Analysis request processing". If it is not cancelled, the process returns to step S426 and waits until the next loop.

ステップS434で封入指示の送信が指示されると、次に、ステップS442で、CPU51は、容器IDが初期値か否かを判断する。容器IDが初期値の場合は、容器30が選択されていないので、ステップS430に戻る。容器IDが初期値ではない場合は、ステップS444に進む。次に、ステップS444で、CPU51は、分析依頼IDに対応する一時共通鍵で封入指示を暗号化する。続くステップ446で、封入指示の暗号文と容器IDとをサーバ18に送信して、ステップS440に戻る。 When the transmission of the enclosing instruction is instructed in step S434, next in step S442, the CPU 51 determines whether the container ID is an initial value. If the container ID is the initial value, no container 30 has been selected, and the process returns to step S430. If the container ID is not the initial value, the process advances to step S444. Next, in step S444, the CPU 51 encrypts the enclosing instruction using the temporary common key corresponding to the analysis request ID. In the subsequent step 446, the encrypted text of the enclosing instruction and the container ID are transmitted to the server 18, and the process returns to step S440.

-サーバの処理-
ここで、図22を参照してサーバ18のCPU40により実行される「署名生成処理」について説明する。「署名生成処理」は、分析者14が受諾する分析依頼を選択すると開始される。まず、ステップS124で、CPU40は、受諾された分析依頼のIDを特定する。次に、ステップS126で、CPU40は、受諾された分析依頼の作業状態レコードを「着手」に更新する。続いて、ステップS128で、CPU40は、分析者14の情報と作業開始時刻とを記録する。
-Server processing-
Here, the "signature generation process" executed by the CPU 40 of the server 18 will be described with reference to FIG. 22. The "signature generation process" is started when the analyst 14 selects an analysis request to be accepted. First, in step S124, the CPU 40 identifies the ID of the accepted analysis request. Next, in step S126, the CPU 40 updates the work status record of the accepted analysis request to "Start". Subsequently, in step S128, the CPU 40 records information on the analyst 14 and the work start time.

次に、ステップS130で、CPU40は、分析者14が選定した容器30の依頼者10への配送をストックヤード20に指示する。次に、ステップS132で、CPU40は、分析者14が選定した容器30の容器秘密鍵と容器公開鍵とを生成する。次に、ステップS134で、CPU40は、分析者14が作成した封入指示の暗号文を取得する。 Next, in step S130, the CPU 40 instructs the stockyard 20 to deliver the container 30 selected by the analyst 14 to the client 10. Next, in step S132, the CPU 40 generates a container private key and a container public key for the container 30 selected by the analyst 14. Next, in step S134, the CPU 40 obtains the encrypted text of the inclusion instruction created by the analyst 14.

次に、ステップS136で、CPU40は、封入指示の暗号文と容器公開鍵とを含む共有情報の電子署名を生成する。即ち、共有情報のハッシュ値を算出し、容器秘密鍵で電子署名を生成する。続くステップS138で、CPU40は、封入指示の暗号文と電子署名とを依頼者10に送信して、「署名生成処理」のルーチンを終了する。 Next, in step S136, the CPU 40 generates an electronic signature for the shared information including the encrypted text of the enclosing instruction and the container public key. That is, a hash value of the shared information is calculated, and an electronic signature is generated using the container private key. In the following step S138, the CPU 40 transmits the encrypted text of the enclosing instruction and the electronic signature to the client 10, and ends the "signature generation process" routine.

(試料送付工程)
次に、試料送付工程について説明する。
図23に示すように、依頼者10は、ストックヤード20から配送された容器30に刻印されている二次元コードをカメラ62で読み取って、容器公開鍵を取得する。詳細には、二次元コードから容器公開鍵のハッシュ値を含むURLが読み取られ、URLから容器公開鍵が閲覧可能になる。
(Sample sending process)
Next, the sample sending process will be explained.
As shown in FIG. 23, the client 10 uses the camera 62 to read the two-dimensional code stamped on the container 30 delivered from the stockyard 20, and obtains the container public key. Specifically, the URL containing the hash value of the container public key is read from the two-dimensional code, and the container public key can be viewed from the URL.

依頼者10は、容器公開鍵を用いて電子署名を検証し、封入指示の暗号文の真正性を検証する。この検証に成功しない場合、容器、封入指示及びその組み合わせが分析者の意図したものではないため、サービス提供者等に連絡を取る必要がある。検証に成功した場合、依頼者10は封入指示に従って試料を容器30に封入し、分析者14に送付する。また、封入した試料に関する試料情報を、一時共通鍵で暗号化して、分析者14に送付することも可能である。 The client 10 verifies the electronic signature using the container public key, and verifies the authenticity of the encrypted text of the enclosing instruction. If this verification is not successful, the container, packaging instructions, and combination thereof are not what the analyst intended, and it is necessary to contact the service provider. If the verification is successful, the client 10 encloses the sample in a container 30 according to the enclosing instructions and sends it to the analyst 14. It is also possible to encrypt sample information regarding the enclosed sample using a temporary common key and send it to the analyst 14.

-依頼者端末の処理-
ここで、図24~図27を参照して依頼者端末12側での処理をより詳細に説明する。これらの処理は、依頼者端末12のCPU50により実行される。
- Processing of client terminal -
Here, the processing on the client terminal 12 side will be explained in more detail with reference to FIGS. 24 to 27. These processes are executed by the CPU 50 of the client terminal 12.

依頼者10は、図8の依頼者メイン画面100で依頼済み案件を選択すると、図24に示す「依頼済み案件処理」が開始される。まず、ステップS250で、CPU50は、選択された依頼済み案件の分析依頼IDを特定し、分析依頼の暗号文と電子署名とをサーバ18から取得する。 When the client 10 selects a requested matter on the client main screen 100 in FIG. 8, "requested matter processing" shown in FIG. 24 is started. First, in step S250, the CPU 50 specifies the analysis request ID of the selected requested case and acquires the ciphertext and electronic signature of the analysis request from the server 18.

次に、ステップS252で、CPU50は、分析依頼IDに対応する一時共通鍵で、依頼者10自身が作成した分析依頼の暗号文を復号する。 Next, in step S252, the CPU 50 decrypts the ciphertext of the analysis request created by the requester 10 himself using the temporary common key corresponding to the analysis request ID.

次に、ステップS254で、CPU50は、インタフェースとして依頼済み案件画面130を表示する。 Next, in step S254, the CPU 50 displays the requested matter screen 130 as an interface.

ここで、図8の画面遷移図を参照する。依頼者10は、依頼者メイン画面100で依頼済み案件を選択すると、UI画面は依頼済み案件画面130に遷移する。依頼済み案件画面130の依頼内容表示欄132には、分析依頼(即ち、依頼内容)が表示され、分析報告表示欄138には、分析報告が表示される。 Here, the screen transition diagram in FIG. 8 will be referred to. When the client 10 selects a requested matter on the client main screen 100, the UI screen transitions to a requested matter screen 130. The request content display field 132 of the requested matter screen 130 displays an analysis request (that is, the request content), and the analysis report display field 138 displays an analysis report.

依頼者10は、封入指示を表示する場合には封入指示表示ボタン134を選択する。封入指示表示ボタン134が選択されると、UI画面は容器識別子読み取り画面140に遷移する。依頼者10は、試料情報を入力する場合には試料情報入力ボタン136を選択する。試料情報入力ボタン136が選択されると、UI画面は試料情報入力ボタン136に遷移する。完了する場合には、依頼者10により完了ボタン139が選択されて、UI画面は依頼者メイン画面100に戻る。 The requester 10 selects the inclusion instruction display button 134 to display the inclusion instruction. When the enclosure instruction display button 134 is selected, the UI screen changes to a container identifier reading screen 140. The client 10 selects the sample information input button 136 when inputting sample information. When the sample information input button 136 is selected, the UI screen changes to the sample information input button 136. If completed, the client 10 selects the completion button 139 and the UI screen returns to the client main screen 100.

図24の説明に戻る。次に、ステップS256で、CPU50は、依頼者10の入力に基づいて封入指示表示か否かを判断する。封入指示表示の場合はステップS262の「容器識別子読み取り処理」に進む。封入指示表示ではない場合はステップS258に進み、ステップS258で、CPU50は、依頼者10の入力に基づいて試料情報入力か否かを判断する。試料情報入力の場合はステップS264の「試料情報入力処理」に進む。試料情報入力ではない場合はステップS260に進み、ステップS260で、CPU50は、依頼者10の入力に基づいて完了か否かを判断する。完了の場合は「依頼者メイン処理」に戻る。完了ではない場合は、ステップS250に戻って、次のループまで待機する。 Returning to the explanation of FIG. 24. Next, in step S256, the CPU 50 determines whether or not an enclosing instruction is displayed based on the input from the requester 10. If the enclosure instruction is displayed, the process advances to step S262, ``container identifier reading process.'' If it is not an enclosure instruction display, the process advances to step S258, and in step S258, the CPU 50 determines whether sample information is to be input based on the input from the requester 10. In the case of inputting sample information, the process advances to "sample information input processing" in step S264. If the input is not sample information, the process advances to step S260, and in step S260, the CPU 50 determines whether or not the input is complete based on the input from the requester 10. If completed, return to "requester main processing". If not completed, the process returns to step S250 and waits until the next loop.

次に、図25を参照して、図24のステップS262の「容器識別子読み取り処理」について説明する。まず、ステップS270で、CPU50は、カメラ画像を取得する。次に、ステップS272で、CPU50は、カメラ画像内の二次元コードから文字列を取得する。次に、ステップS274で、CPU50は、二次元コードが容器公開鍵を表すか判断する。容器公開鍵を表す場合は、ステップS276に進み、容器公開鍵を表さない場合は、ステップS270に戻る。 Next, with reference to FIG. 25, the "container identifier reading process" in step S262 of FIG. 24 will be described. First, in step S270, the CPU 50 acquires a camera image. Next, in step S272, the CPU 50 acquires a character string from the two-dimensional code in the camera image. Next, in step S274, the CPU 50 determines whether the two-dimensional code represents the container public key. If the container public key is represented, the process advances to step S276; if the container public key is not represented, the process returns to step S270.

次に、ステップS276で、CPU50は、依頼者10の入力に基づいて読み取りか否かを判断する。読み取りの場合は、ステップS280の「封入指示表示処理」に進む。読み取りではない場合は、ステップS278に進み、ステップS278で、CPU50は、依頼者10の入力に基づいて取り消しか否かを判断する。取り消しの場合は、ステップS282の「依頼済み案件処理」に戻り、取り消しではない場合は、ステップS270に戻って、次のループまで待機する。 Next, in step S276, the CPU 50 determines whether or not to read based on the input from the requester 10. In the case of reading, the process advances to step S280, ``inclusion instruction display processing''. If it is not a reading, the process advances to step S278, and in step S278, the CPU 50 determines whether or not to cancel based on the input from the requester 10. In the case of cancellation, the process returns to "requested matter processing" in step S282, and in the case of non-cancellation, the process returns to step S270 and waits until the next loop.

ここで、図8の画面遷移図を参照する。依頼者10は、容器30の二次元コードを撮影し、カメラ62の画像を、容器識別子読み取り画面140のカメラ画像表示欄142に表示させる。依頼者10が、読み取りボタン144を選択すると、二次元コードが読み取られて容器公開鍵が取得され、UI画面は封入指示表示画面150に遷移する。 Here, the screen transition diagram in FIG. 8 will be referred to. The client 10 photographs the two-dimensional code of the container 30 and causes the image of the camera 62 to be displayed in the camera image display column 142 of the container identifier reading screen 140. When the client 10 selects the read button 144, the two-dimensional code is read and the container public key is obtained, and the UI screen changes to an enclosure instruction display screen 150.

次に、図26を参照して、図25のステップS280の「封入指示表示処理」について説明する。まず、ステップS290で、CPU50は、容器公開鍵と暗号文とにより電子署名を検証する。次に、ステップS292で、CPU50は、検証に失敗したか否かを判断する。検証に成功した場合は、ステップS294に進む。一方、検証に失敗した場合は、ステップS300の依頼済み案件処理に戻る。 Next, with reference to FIG. 26, the "inclusion instruction display process" in step S280 of FIG. 25 will be described. First, in step S290, the CPU 50 verifies the electronic signature using the container public key and the ciphertext. Next, in step S292, the CPU 50 determines whether the verification has failed. If the verification is successful, the process advances to step S294. On the other hand, if the verification fails, the process returns to the requested matter processing in step S300.

次に、ステップS294で、CPU50は、分析依頼IDに対応する一時共通鍵で封入指示の暗号文を復号する。次に、ステップS296で、CPU50は、インタフェースとして封入指示表示画面150を表示する。 Next, in step S294, the CPU 50 decrypts the ciphertext of the enclosing instruction using the temporary common key corresponding to the analysis request ID. Next, in step S296, the CPU 50 displays the inclusion instruction display screen 150 as an interface.

ここで、図8の画面遷移図を参照する。封入指示表示画面150の封入指示表示欄152には、容器公開鍵で検証され、一時共通鍵で復号された封入指示の平文が表示される。依頼者10が、完了ボタンを選択すると、依頼者メイン画面100に戻る。 Here, the screen transition diagram in FIG. 8 will be referred to. The enclosing instruction display column 152 of the enclosing instruction display screen 150 displays the plain text of the enclosing instruction that has been verified using the container public key and decrypted using the temporary common key. When the requester 10 selects the completion button, the requester main screen 100 returns.

図26の説明に戻る。次に、ステップS298で、CPU50は、完了か否かを判断する。完了の場合は、ステップS300の「依頼済み案件処理」に戻り、完了ではない場合は、ステップS290に戻って、次のループまで待機する。 Returning to the explanation of FIG. 26. Next, in step S298, the CPU 50 determines whether or not the process is completed. If completed, the process returns to "requested matter processing" in step S300; if not completed, the process returns to step S290 and waits until the next loop.

次に、図27を参照して、図24のステップS264の「試料情報入力処理」について説明する。まず、ステップS302で、CPU50は、インタフェースとして試料情報入力画面160を表示する。 Next, with reference to FIG. 27, the "sample information input process" in step S264 in FIG. 24 will be described. First, in step S302, the CPU 50 displays the sample information input screen 160 as an interface.

ここで、図8の画面遷移図を参照する。依頼者10は、試料情報入力画面160の入力欄161に必要に応じて試料情報を入力する。依頼者10が、送信ボタン162を選択すると、試料情報が暗号化されてサーバ18に送信され、UI画面は依頼者メイン画面100に戻る。また、依頼者10が、取り消しボタン164を選択すると入力が取り消されて、UI画面は依頼者メイン画面100に戻る。 Here, the screen transition diagram in FIG. 8 will be referred to. The client 10 inputs sample information into the input field 161 of the sample information input screen 160 as necessary. When the client 10 selects the send button 162, the sample information is encrypted and transmitted to the server 18, and the UI screen returns to the client main screen 100. Furthermore, when the client 10 selects the cancel button 164, the input is canceled and the UI screen returns to the client main screen 100.

図27の説明に戻る。次に、ステップS304で、CPU50は、依頼者10の入力に基づいて送信か否かを判断する。送信の場合はステップS310に進む。送信ではない場合は、ステップS306に進み、ステップS306で、CPU50は、依頼者10の入力に基づいて取り消しか否かを判断する。取り消しの場合は、ステップS308の「依頼済み案件処理」に進む。 Returning to the explanation of FIG. 27. Next, in step S304, the CPU 50 determines whether or not to send based on the input from the requester 10. In the case of transmission, the process advances to step S310. If not, the process advances to step S306, and in step S306, the CPU 50 determines whether or not to cancel based on the input from the requester 10. In the case of cancellation, the process advances to "requested matter processing" in step S308.

ステップS304で試料情報の送信が指示された場合は、次に、ステップS310で、CPU50は、分析依頼IDに対応する一時共通鍵で試料情報を暗号化する、続くステップ312で、CPU50は、試料情報の暗号文をサーバ18に送信して、ステップS302に戻って、次のループまで待機する。 If sending the sample information is instructed in step S304, then in step S310 the CPU 50 encrypts the sample information with the temporary common key corresponding to the analysis request ID.In the subsequent step 312, the CPU 50 encrypts the sample information The encrypted text of the information is sent to the server 18, and the process returns to step S302 to wait until the next loop.

(分析報告工程)
次に、分析報告工程について説明する。
図28に示すように、分析者14は、依頼者10から配送された容器30から試料を取り出して分析を行う。また、依頼者10から試料情報が提供された場合は、分析依頼と同様に一時共通鍵で復号して閲覧する。また、分析者14は、依頼者10と同様に、容器30に刻印されている二次元コードを読み取り、容器公開鍵に基づいて、封入指示とともに自身が発注した容器30であることを確認してもよい。
(Analysis report process)
Next, the analysis reporting process will be explained.
As shown in FIG. 28, the analyst 14 takes out a sample from the container 30 delivered by the client 10 and analyzes it. Further, when sample information is provided by the requester 10, it is decrypted using a temporary common key and viewed in the same way as when requesting analysis. In addition, the analyst 14, like the client 10, reads the two-dimensional code engraved on the container 30, and based on the container public key, confirms that the container 30 is the one ordered by the analyst along with the filling instructions. Good too.

そして、分析者14は、分析報告を作成して、一時共通鍵で暗号化して依頼者10に送付する。ここで分析報告は、封入指示に含まれる情報とは異なる「他の情報」の一例である。このとき、封入指示と同様に、分析報告の暗号文について容器秘密鍵を用いて電子署名を生成し、分析報告の暗号文と共に電子署名を送付してもよい。電子署名により、依頼者10には、容器30に紐づいた分析報告を提供することができる。 Then, the analyst 14 creates an analysis report, encrypts it with the temporary common key, and sends it to the client 10. Here, the analysis report is an example of "other information" different from the information included in the enclosure instruction. At this time, similarly to the enclosing instruction, an electronic signature may be generated for the encrypted text of the analysis report using the container private key, and the electronic signature may be sent together with the encrypted text of the analysis report. The electronic signature allows the requester 10 to be provided with an analysis report linked to the container 30.

試料の返却が不要である場合、分析前後で不要になった段階で、容器30はストックヤード20に返却され、試料は破棄される。試料を返却する必要がある場合には、容器30を試料が入った状態で依頼者10に返送する。 If the sample does not need to be returned, the container 30 is returned to the stockyard 20 and the sample is discarded when it is no longer needed before or after analysis. If it is necessary to return the sample, the container 30 containing the sample is returned to the client 10.

依頼者10は、分析者14から送付された分析報告を一時共通鍵で復号して閲覧する。また、電子署名がある場合には、封入指示と同様のプロセスで検証して、容器30と分析報告の組合せについて真正性を確認する。試料の返却があった場合には、試料を容器30から取り出して、ストックヤード20に返却する。 The client 10 decrypts the analysis report sent from the analyst 14 using the temporary common key and views it. Furthermore, if there is an electronic signature, it is verified using the same process as the enclosing instruction to confirm the authenticity of the combination of the container 30 and the analysis report. When the sample is returned, the sample is taken out from the container 30 and returned to the stockyard 20.

-分析者端末の処理-
ここで、図29を参照して分析者端末16側での処理をより詳細に説明する。これらの処理は、分析者端末16のCPU51により実行される。
- Processing of analyst terminal -
Here, the processing on the analyst terminal 16 side will be explained in more detail with reference to FIG. 29. These processes are executed by the CPU 51 of the analyst terminal 16.

図9の分析依頼画面180で、分析報告入力ボタン188が選択されると、図29の「分析報告入力処理」が開始される。まず、ステップS450で、CPU51は、インタフェースとして分析報告入力画面200を表示する。 When the analysis report input button 188 is selected on the analysis request screen 180 of FIG. 9, the "analysis report input process" of FIG. 29 is started. First, in step S450, the CPU 51 displays the analysis report input screen 200 as an interface.

ここで、図9の画面遷移図を参照する。分析者14が、分析依頼画面180で、分析報告入力ボタン188を選択すると、UI画面は分析報告入力画面200に遷移する。分析者14は、分析報告入力画面200の分析報告入力欄202に分析報告を入力する。分析者14が、送信ボタン204を選択すると、分析報告が暗号化されてサーバ18に送信され、UI画面は分析者メイン画面170に戻る。また、分析者14が、取り消しボタン206を選択すると入力が取り消されて、UI画面は分析者メイン画面170に戻る。 Here, the screen transition diagram in FIG. 9 will be referred to. When the analyst 14 selects the analysis report input button 188 on the analysis request screen 180, the UI screen transitions to an analysis report input screen 200. The analyst 14 inputs an analysis report into the analysis report input field 202 of the analysis report input screen 200. When the analyst 14 selects the send button 204, the analysis report is encrypted and sent to the server 18, and the UI screen returns to the analyst main screen 170. Furthermore, when the analyst 14 selects the cancel button 206, the input is canceled and the UI screen returns to the analyst main screen 170.

図29の説明に戻る。次に、ステップS452で、CPU51は、分析者14の入力に基づいて送信か否かを判断する。送信の場合はステップS458に進む。送信ではない場合は、ステップS454に進む。続くステップS454で、CPU51は、分析者14の入力に基づいて取り消しか否かを判断する。取り消しの場合は、ステップS456の「分析依頼処理」に進む。取り消しではない場合は、ステップS450に戻って、次のループまで待機する。 Returning to the explanation of FIG. 29. Next, in step S452, the CPU 51 determines whether or not to transmit based on the input from the analyst 14. In the case of transmission, the process advances to step S458. If it is not a transmission, the process advances to step S454. In the following step S454, the CPU 51 determines whether or not to cancel based on the input from the analyst 14. In the case of cancellation, the process advances to "analysis request processing" in step S456. If it is not cancelled, the process returns to step S450 and waits until the next loop.

一方、ステップS452で分析報告の送信と判断された場合は、次に、ステップS458で、CPU51は、分析依頼IDに対応する一時共通鍵で分析報告を暗号化する。続くステップ460で、CPU51は、分析報告の暗号文をサーバ18に送信して、ステップS450に戻って、次のループまで待機する。 On the other hand, if it is determined in step S452 that an analysis report is to be sent, then in step S458, the CPU 51 encrypts the analysis report with a temporary common key corresponding to the analysis request ID. In the following step 460, the CPU 51 transmits the ciphertext of the analysis report to the server 18, returns to step S450, and waits until the next loop.

-サーバの処理-
ここで、図30を参照してサーバ18のCPU40により実行される「分析終了処理」について説明する。「分析終了処理」は、分析者14から分析報告の暗号文を受信すると開始される。まず、ステップS140で、CPU40は、任意選択で、容器秘密鍵を用いて分析報告の暗号文の電子署名を生成する。次に、ステップS142で、CPU40は、分析報告の暗号文を依頼者10に送信する。電子署名が生成された場合は、分析報告の暗号文と電子署名とを、依頼者10に送信する。次に、ステップS144で、CPU40は、作業状態レコードを「完了」に更新して、「分析終了処理」のルーチンを終了する。
-Server processing-
Here, the "analysis completion process" executed by the CPU 40 of the server 18 will be described with reference to FIG. The "analysis completion process" is started when the ciphertext of the analysis report is received from the analyst 14. First, in step S140, the CPU 40 optionally generates an electronic signature for the ciphertext of the analysis report using the container private key. Next, in step S142, the CPU 40 transmits the ciphertext of the analysis report to the client 10. If an electronic signature is generated, the ciphertext of the analysis report and the electronic signature are sent to the client 10. Next, in step S144, the CPU 40 updates the work status record to "completed" and ends the "analysis completion process" routine.

-依頼者端末の処理-
図24を参照して説明した通り、図24に示す「依頼済み案件処理」は、分析者14から分析報告が納品された場合にも対応している。依頼者10が、分析報告を閲覧する際には、図8の依頼者メイン画面100で依頼済み案件を選択すると、図24に示す「依頼済み案件処理」が開始され、依頼済み案件画面130の分析報告表示欄138には、分析報告の平文が表示される。
- Processing of client terminal -
As described with reference to FIG. 24, the "requested case processing" shown in FIG. 24 also corresponds to the case where an analysis report is delivered from the analyst 14. When the requester 10 views an analysis report, when he selects a requested matter on the client main screen 100 in FIG. 8, the "requested matter processing" shown in FIG. The plain text of the analysis report is displayed in the analysis report display column 138.

以上説明した通り、第1の実施形態では、容器30に刻印された公開鍵で検証可能な封入指示のみを依頼者10に提示でき、分析者14の指示を依頼者10が取り違えて、試料が意図しない容器30に封入されるという封入ミスを低減することができる。 As explained above, in the first embodiment, only the packaging instructions that can be verified using the public key engraved on the container 30 can be presented to the client 10. Enclosing errors such as being enclosed in an unintended container 30 can be reduced.

また、誤った容器30が依頼者10に配送されても、検証可能な封入指示がなく、誤った容器30への試料が封入されるという封入ミスを低減することができる。また、封入指示は暗号化されているので第三者が盗聴することは困難であるし、悪意のある第三者により容器のすり替えや返送先の改ざんが行われても、検証により検知することができる。 Moreover, even if the wrong container 30 is delivered to the client 10, there is no verifiable charging instruction, and it is possible to reduce the possibility of a filling error in which the sample is sealed in the wrong container 30. In addition, since the packaging instructions are encrypted, it is difficult for a third party to eavesdrop on them, and even if a malicious third party attempts to change the container or falsify the return address, it will be detected through verification. I can do it.

また、第1の実施形態では、依頼者10と分析者14との間でやり取りされる情報は、共通鍵で暗号化されており、復号に必要な共通鍵を有する依頼者10と分析者14のみが、その内容を知ることができる。更に、容器30に刻印された公開鍵は、光学的又は電磁気的に読み取り可能であり、素早く検証を行うことができる。また、公開鍵は第三者に公開されているので、公開鍵が分析者14やその所属組織のものであることを標示できる。 Further, in the first embodiment, information exchanged between the client 10 and the analyst 14 is encrypted using a common key, and the client 10 and the analyst 14 have the common key necessary for decryption. Only those who know the contents can know the contents. Furthermore, the public key stamped on the container 30 can be read optically or electromagnetically, allowing for quick verification. Furthermore, since the public key is disclosed to a third party, it can be indicated that the public key belongs to the analyst 14 or the organization to which he or she belongs.

[第2の実施形態]
第2の実施形態では、分析依頼を暗号化する一時共通鍵Aと、封入指示以降の依頼者-分析者間のやりとりを暗号化する一時共通鍵Bとを導入したものである。
[Second embodiment]
The second embodiment introduces a temporary common key A that encrypts an analysis request and a temporary common key B that encrypts communications between the requester and the analyst after the enclosing instruction is issued.

一時共通鍵Aは、第1の実施形態と同様に、トークン生成器11で生成されたOTPと初期化ベクトルとから共通鍵暗号方式で生成されたAES共通鍵としてもよい。 Similar to the first embodiment, the temporary common key A may be an AES common key generated using a common key cryptosystem from the OTP generated by the token generator 11 and the initialization vector.

一方、一時共通鍵Bは、ディフィー・ヘルマン(DH)鍵交換方式、又は楕円曲線ディフィー・ヘルマン(ECDH)鍵交換方式を用いて生成された共通鍵である。DH鍵交換方式及びECDH鍵交換方式では、依頼者10と分析者14との間で一時的に生成された一時秘密鍵及び一時公開鍵のペアのうち、一時公開鍵のみが相手に送信される。依頼者10と分析者14は、それぞれ相手の一時公開鍵と自身の一時秘密鍵及び一時公開鍵のペアとから一時共通鍵を生成する。 On the other hand, the temporary common key B is a common key generated using the Diffie-Hellman (DH) key exchange method or the elliptic curve Diffie-Hellman (ECDH) key exchange method. In the DH key exchange method and the ECDH key exchange method, of the pair of temporary private key and temporary public key temporarily generated between the client 10 and the analyst 14, only the temporary public key is sent to the other party. . The client 10 and the analyst 14 each generate a temporary common key from the other party's temporary public key and their own temporary private key/temporary public key pair.

図31は分析サービス提供システムの処理の流れを概略的に示すシーケンス図である。ステップS2~ステップS8を省略し、点線で囲んだステップS54~ステップS68を挿入した点が、図6に示すシーケンス図とは相違している。共通するステップには同一又は類似の符号を付して説明を省略する。図6のステップS26は、図31では、一時共通鍵Aで分析依頼を復号するステップS26Aと、封入指示を作成して一時共通鍵Bで暗号化するステップS26Bと、に分けられている。図31のステップS28A~ステップS52Aは、一時共通鍵Bが使用される以外は、図6のステップS28~ステップS52と同様である。 FIG. 31 is a sequence diagram schematically showing the processing flow of the analysis service providing system. This sequence diagram differs from the sequence diagram shown in FIG. 6 in that steps S2 to S8 are omitted and steps S54 to S68 surrounded by dotted lines are inserted. Common steps will be given the same or similar reference numerals and their explanation will be omitted. Step S26 in FIG. 6 is divided into step S26A in which the analysis request is decrypted using the temporary common key A, and step S26B in which the enclosing instruction is created and encrypted using the temporary common key B in FIG. Steps S28A to S52A in FIG. 31 are similar to steps S28 to S52 in FIG. 6, except that temporary common key B is used.

したがって、ステップS54~ステップS68の一時共通鍵Bの生成工程のみ説明する。サーバ18は、一時共通鍵パラメータを分析者14に送信する(S54)。また、サーバ18は、一時共通鍵パラメータを依頼者10にも送信する(S56)。分析者14は、一時共通鍵パラメータを用いて一時秘密鍵と一時公開鍵のペアを生成する(S58)。依頼者10も、一時共通鍵パラメータを用いて一時秘密鍵と一時公開鍵のペアを生成する(S60)。 Therefore, only the steps S54 to S68 for generating the temporary common key B will be explained. The server 18 transmits the temporary common key parameter to the analyst 14 (S54). The server 18 also transmits the temporary common key parameter to the client 10 (S56). The analyst 14 generates a pair of a temporary private key and a temporary public key using the temporary common key parameter (S58). The client 10 also generates a pair of a temporary private key and a temporary public key using the temporary common key parameter (S60).

依頼者10は、分析者14に一時公開鍵を送信する(S62)。分析者14は、分析者14自身の一時秘密鍵及び一時公開鍵と、依頼者10の一時公開鍵とから、一時共通鍵Bを生成する(S64)。また、分析者14も、依頼者10に一時公開鍵を送信する(S66)。依頼者10は、依頼者10自身の一時秘密鍵及び一時公開鍵と、分析者14の一時公開鍵とから、一時共通鍵Bを生成する(S68)。以降の暗号化には、一時共通鍵Bが使用される。 The client 10 transmits the temporary public key to the analyst 14 (S62). The analyst 14 generates a temporary common key B from the analyst's own temporary private key and temporary public key and the temporary public key of the client 10 (S64). The analyst 14 also transmits the temporary public key to the client 10 (S66). The client 10 generates a temporary common key B from the client 10's own temporary private key and temporary public key and the analyst 14's temporary public key (S68). Temporary common key B is used for subsequent encryption.

第1の実施形態では、依頼者10、分析者14、サーバ18が同一の一時共通鍵を保持するが、本来サーバ18(及びその管理者)は分析内容を知る必要がない。また、サーバ18から一時共通鍵が漏洩した際に、全ての分析内容を盗聴される恐れがある。第2の実施形態では、封入指示以降の依頼者-分析者間のやりとりを暗号化する際には、一時共通鍵Bを使用する。第3者に知られることなく、依頼者10と分析者14との間にだけ一時共通鍵Bが生成されるため、サーバ18を含む第三者から通信内容を秘匿することができる。 In the first embodiment, the client 10, the analyst 14, and the server 18 hold the same temporary common key, but the server 18 (and its administrator) does not originally need to know the content of the analysis. Furthermore, if the temporary common key is leaked from the server 18, there is a risk that all the analysis contents will be intercepted. In the second embodiment, a temporary common key B is used when encrypting the communication between the requester and the analyst after the enclosing instruction. Since the temporary common key B is generated only between the client 10 and the analyst 14 without being known by a third party, the content of communication can be kept secret from third parties including the server 18.

[第3の実施形態]
第3の実施形態に係る分析サービス提供システムでは、分析者14の手元から離れている外部機器24(搬送台車、保管庫、分析装置など)を利用する。ここでは、依頼者10や分析者14の外に、容器の搬送や保管に関わる担当者等の第三者も、外部機器24の操作や状態表示にアクセスする可能性がある。
[Third embodiment]
The analysis service providing system according to the third embodiment uses external equipment 24 (transportation vehicle, storage, analysis device, etc.) that is remote from the analyst 14. Here, in addition to the client 10 and the analyst 14, a third party such as a person in charge of transporting and storing containers may also access the operation and status display of the external device 24.

図32に示すように、第3の実施形態では、外部機器24には、外部機器24の操作や状態表示へのアクセスを管理する認証システムが設けられている。また、外部機器24には、容器30に刻印された二次元コードをカメラ26で読み取り、容器公開鍵を特定できる仕組みが設けられている。 As shown in FIG. 32, in the third embodiment, the external device 24 is provided with an authentication system that manages the operation of the external device 24 and access to the status display. Furthermore, the external device 24 is provided with a mechanism that allows the camera 26 to read the two-dimensional code stamped on the container 30 and identify the container public key.

依頼者10、分析者14、又は第三者(以下、「依頼者10等」という。)が、外部機器24の操作や状態表示にアクセスしようとする場合には、サーバ18に対するログイン認証等の別の認証システムで認証された上で、外部機器24による認証がさらに必要になる。 When the client 10, the analyst 14, or a third party (hereinafter referred to as "the client 10, etc.") attempts to access the operation or status display of the external device 24, login authentication to the server 18, etc. is required. After being authenticated by another authentication system, authentication by the external device 24 is further required.

例えば、依頼者10等は、適当な乱数を生成してサーバ18に送付すると、サーバ18は、乱数を容器秘密鍵で暗号化して電子署名を生成し、依頼者10等に対して電子署名を発行する。そして、依頼者10等は、乱数とともに電子署名を外部機器24の認証システムに投入する。外部機器24は、受け取った乱数と電子署名が、容器30から得られた容器公開鍵で検証できるかどうかにより、依頼者10等に対する認証を行うことができる。 For example, when the requester 10 etc. generates an appropriate random number and sends it to the server 18, the server 18 encrypts the random number with the container private key, generates an electronic signature, and sends the electronic signature to the requester 10 etc. Issue. Then, the client 10 or the like inputs the electronic signature together with the random number into the authentication system of the external device 24. The external device 24 can authenticate the client 10 or the like depending on whether the received random number and electronic signature can be verified with the container public key obtained from the container 30.

外部機器24を利用する場合、機密上の理由で各機器へのアクセスを限定する必要のある場合がある。第3の実施形態のように、外部機器24の操作や状態表示へのアクセスを管理する認証システムと、容器公開鍵を取得する仕組みとを備えることで、適当な情報(例えば、乱数)とその情報を容器秘密鍵を用いて生成した電子署名とを、容器公開鍵で検証できるかどうかによってアクセス認証を行うことが可能となる。 When using external devices 24, it may be necessary to limit access to each device for security reasons. As in the third embodiment, by providing an authentication system that manages the operation of the external device 24 and access to the status display, and a mechanism for acquiring the container public key, appropriate information (for example, a random number) and its Access authentication can be performed based on whether information can be verified with the container public key and an electronic signature generated using the container private key.

なお、外部機器24が公開鍵を取得する方法は、この形態には限られない。例えば、外部機器24の認証システムに、予め容器公開鍵を直接登録しておくこともできる。 Note that the method by which the external device 24 obtains the public key is not limited to this form. For example, the container public key can be directly registered in the authentication system of the external device 24 in advance.

また、認証に使用する公開鍵は容器公開鍵に限定するものではない。外部機器24の認証システムを容器30だけではなく、多要素認証として個人にも紐づけたい場合がある。この場合、依頼者10等の個人が個別に秘密鍵と公開鍵を所持し、個人の公開鍵を外部機器24の認証システムに登録してもよい。 Furthermore, the public key used for authentication is not limited to the container public key. There are cases where it is desired to link the authentication system of the external device 24 not only to the container 30 but also to an individual as multi-factor authentication. In this case, an individual such as the client 10 may individually have a private key and a public key, and may register the individual's public key in the authentication system of the external device 24.

例えば、個人の公開鍵を二次元コードに変換してネームプレートに印字し、スマートフォンに秘密鍵が格納されていて、外部機器24とスマートフォンの時刻がインターネット上のNTP(Network Time Protocol)サーバで時刻同期されている場合を考える。このとき、スマートフォンに格納した秘密鍵で時刻に対する電子署名を生成し、スマートフォンの画面に二次元コードとして表示することができる。そして、外部機器24は、ネームプレートから公開鍵を読み取り、スマートフォンの画面から電子署名を読み取り、二次元コードをカメラ26で読み取ることで取得できる。これにより、外部機器24は、時刻が検証できるかどうかで認証を行うことができる。 For example, if an individual's public key is converted into a two-dimensional code and printed on a name plate, the private key is stored in the smartphone, and the time on the external device 24 and the smartphone is determined by an NTP (Network Time Protocol) server on the Internet. Consider the case of synchronization. At this time, an electronic signature for the time can be generated using a private key stored in the smartphone and displayed as a two-dimensional code on the smartphone screen. Then, the external device 24 can acquire the public key by reading the public key from the name plate, reading the electronic signature from the screen of the smartphone, and reading the two-dimensional code with the camera 26. Thereby, the external device 24 can perform authentication based on whether the time can be verified.

別の多要素認証の形態としては、第2の実施形態においてDH鍵交換で生成した、一時公開鍵と一時秘密鍵を利用することもできる。一時公開鍵の生成後に二次元コードとして紙に印字する仕組みと、一時秘密鍵による時刻の電子署名をスマートフォンやPC画面上で二次元コードとして表示する仕組みを追加することで、外部機器24は、時刻と電子署名と一時公開鍵を取得して、時刻が検証できるかどうかで認証を行うことができる。 As another form of multi-factor authentication, it is also possible to use the temporary public key and temporary private key generated by DH key exchange in the second embodiment. By adding a mechanism to print a two-dimensional code on paper after generating a temporary public key, and a mechanism to display a time electronic signature using a temporary private key as a two-dimensional code on a smartphone or PC screen, the external device 24 can Authentication can be performed by obtaining the time, digital signature, and temporary public key, and determining whether the time can be verified.

なお、第3の実施形態では、外部機器24が認証を行うものとして説明したが、サーバ18が、外部機器24を介して認証を行うようにしてもよい。 Although the third embodiment has been described as assuming that the external device 24 performs the authentication, the server 18 may perform the authentication via the external device 24.

[変形例]
なお、上記各実施形態で説明した分析サービス提供方法、分析サービス提供装置、分析サービス提供システム、及びプログラムの構成は一例であり、本発明の主旨を逸脱しない範囲内において変更してもよいことは言うまでもない。
[Modified example]
The configurations of the analytical service providing method, analytical service providing device, analytical service providing system, and program described in each of the above embodiments are merely examples, and may be modified without departing from the spirit of the present invention. Needless to say.

図33(A)は「1対1」の分析依頼に対応する機能配置を示す模式図であり、上記実施形態では、図33(B)は「多対多」の分析依頼に対応する機能配置を示す模式図である。上記実施形態では、図33(B)は「多対多」の分析依頼で本発明を説明したが、図33(A)に示す「1対1」の分析依頼にも本発明は適用可能である。この場合は、両者を比較すれば明らかなように、サーバ18及びストックヤード20が担っていた機能を、分析者14が担うことになる。 FIG. 33(A) is a schematic diagram showing a functional arrangement corresponding to a "one-to-one" analysis request, and in the above embodiment, FIG. 33(B) is a schematic diagram showing a functional arrangement corresponding to a "many-to-many" analysis request. FIG. In the above embodiment, the present invention was explained using a "many-to-many" analysis request in FIG. 33(B), but the present invention is also applicable to a "one-to-one" analysis request shown in FIG. 33(A). be. In this case, as is clear from a comparison of the two, the analyst 14 will perform the functions previously performed by the server 18 and the stockyard 20.

1 分析サービス提供システム
10 依頼者
11 トークン生成器
12 依頼者端末
14 分析者
16 分析者端末
18 サーバ
20 ストックヤード
22 分析センタ
24 外部機器
24A 分析装置
24B 保管庫
24C 搬送台車
26 カメラ
30、30A、30B 容器
48 データベース(DB)
62、63 カメラ
100 依頼者メイン画面
110 依頼者メイン画面
110 新規依頼画面
120 OTP入力画面
130 依頼済み案件画面
140 容器識別子読み取り画面
150 封入指示表示画面
160 試料情報入力画面
170 分析者メイン画面
180 分析依頼画面
190 封入指示入力画面
200 分析報告入力画面
300 容器登録部
302 依頼受付部
304 署名生成部
306 配送依頼部
310 インタフェース提供部
312 暗号化・復号部
314 署名検証部
320 インタフェース提供部
322 暗号化・復号部
1 Analysis service providing system 10 Client 11 Token generator 12 Client terminal 14 Analyst 16 Analyst terminal 18 Server 20 Stockyard 22 Analysis center 24 External equipment 24A Analysis device 24B Storage 24C Transport vehicle 26 Cameras 30, 30A, 30B Container 48 Database (DB)
62, 63 Camera 100 Client main screen 110 Client main screen 110 New request screen 120 OTP input screen 130 Requested project screen 140 Container identifier reading screen 150 Enclosing instruction display screen 160 Sample information input screen 170 Analyst main screen 180 Analysis request Screen 190 Enclosing instruction input screen 200 Analysis report input screen 300 Container registration section 302 Request reception section 304 Signature generation section 306 Delivery request section 310 Interface provision section 312 Encryption/decryption section 314 Signature verification section 320 Interface provision section 322 Encryption/Decryption section Department

Claims (22)

試料を容器に封入して受け渡しする分析サービス提供方法であって、
秘密鍵及び公開鍵を前記容器に関連付けるステップと、
依頼者から分析依頼を受け付けるステップと、
前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信するステップと、
前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼するステップと、
を含む分析サービス提供方法。
An analysis service providing method in which a sample is sealed in a container and delivered,
associating a private key and a public key with the container;
a step of accepting an analysis request from a requester;
a step of electronically signing information regarding a sample to be sealed in the container in response to the analysis request using the private key associated with the container, and transmitting the information to the requester;
requesting a custodian of the container to deliver the container to which the public key associated with the container or its storage location is added to the requester;
How we provide analytical services, including:
前記容器に関連する前記公開鍵は、前記容器に取り外し不能な状態で付加される、請求項1に記載の分析サービス提供方法。 The analytical service providing method according to claim 1, wherein the public key associated with the container is irremovably attached to the container. 前記容器に関連する前記公開鍵は、光学的又は電磁気的に読み取り可能な識別標識として付加されている、請求項1に記載の分析サービス提供方法。 2. The analytical service providing method according to claim 1, wherein the public key associated with the container is added as an optically or electromagnetically readable identification mark. 前記識別標識は、一次元コード又は二次元コードである、請求項3に記載の分析サービス提供方法。 The analysis service providing method according to claim 3, wherein the identification mark is a one-dimensional code or a two-dimensional code. 前記容器は、前記情報とは別に配送される、請求項1に記載の分析サービス提供方法。 The analytical service providing method according to claim 1, wherein the container is delivered separately from the information. 前記情報は、前記依頼者が保持可能な共通鍵で暗号化されている、請求項1に記載の分析サービス提供方法。 2. The analysis service providing method according to claim 1, wherein the information is encrypted with a common key that can be held by the client. 前記共通鍵は、トークンを用いたワンタイムパスワードから生成されている、請求項6に記載の分析サービス提供方法。 7. The analysis service providing method according to claim 6, wherein the common key is generated from a one-time password using a token. 前記共通鍵は、ディフィー・ヘルマン(DH)鍵交換方式、又は楕円曲線ディフィー・ヘルマン(ECDH)鍵交換方式を用いて生成されている、請求項6に記載の分析サービス提供方法。 7. The analysis service providing method according to claim 6, wherein the common key is generated using a Diffie-Hellman (DH) key exchange method or an elliptic curve Diffie-Hellman (ECDH) key exchange method. 前記情報とは異なる他の情報を送信又は受信するステップをさらに含み、
通信用の秘密鍵及び公開鍵を生成し、前記通信用の秘密鍵を用いて前記他の情報の電子署名を生成し、前記通信用の公開鍵で前記他の情報の電子署名を検証可能とする、請求項1に記載の分析サービス提供方法。
further comprising the step of transmitting or receiving other information different from the information,
Generating a private key and a public key for communication, generating an electronic signature of the other information using the private key for communication, and verifying the electronic signature of the other information using the public key for communication. The analysis service providing method according to claim 1.
前記依頼者との間で鍵交換方式により共通鍵を生成した場合は、
前記通信用の秘密鍵及び公開鍵として、前記共通鍵の生成に使用した一時秘密鍵及び一時公開鍵を用いる、請求項9に記載の分析サービス提供方法。
If a common key is generated with the client using a key exchange method,
10. The analysis service providing method according to claim 9, wherein a temporary secret key and a temporary public key used to generate the common key are used as the communication private key and public key.
前記送信及び受信は、通信手段を介して行われる、請求項1に記載の分析サービス提供方法。 The analysis service providing method according to claim 1, wherein the transmission and reception are performed via communication means. 外部機器に前記試料が封入された前記容器を処理させるステップをさらに含み、
前記外部機器は、前記依頼者、前記試料の分析を行う分析者、又は第三者に対するアクセス認証を実行する、請求項1に記載の分析サービス提供方法。
further comprising the step of causing an external device to process the container in which the sample is sealed,
2. The analysis service providing method according to claim 1, wherein the external device performs access authentication for the client, an analyst who analyzes the sample, or a third party.
前記アクセス認証に、前記容器に関連する前記秘密鍵及び公開鍵が使用される、請求項12に記載の分析サービス提供方法。 13. The analytical service providing method according to claim 12, wherein the private key and public key associated with the container are used for the access authentication. 前記アクセス認証に、鍵交換方式による共通鍵の生成に使用した一時秘密鍵及び一時公開鍵が使用される、請求項12に記載の分析サービス提供方法。 13. The analysis service providing method according to claim 12, wherein a temporary private key and a temporary public key used for generating a common key using a key exchange method are used for the access authentication. 前記アクセス認証に、前記アクセス認証のために生成した認証用の秘密鍵及び公開鍵が使用される、請求項12に記載の分析サービス提供方法。 13. The analysis service providing method according to claim 12, wherein the access authentication uses an authentication private key and a public key generated for the access authentication. 前記容器に関連する前記公開鍵は、閲覧可能とされている、請求項1に記載の分析サービス提供方法。 The analysis service providing method according to claim 1, wherein the public key associated with the container is viewable. 前記公開鍵の格納先から前記公開鍵を取得して提供するステップをさらに含む、
請求項1に記載の分析サービス提供方法。
further comprising the step of obtaining and providing the public key from a storage location of the public key;
The analysis service providing method according to claim 1.
試料を容器に封入して受け渡しする分析サービス提供装置であって、
秘密鍵及び公開鍵を前記容器に関連付ける容器登録部と、
依頼者から分析依頼を受け付ける依頼受付部と、
前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信する署名生成部と、
前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼する配送依頼部と、
を備える分析サービス提供装置。
An analysis service providing device that seals a sample in a container and delivers it,
a container registration unit that associates a private key and a public key with the container;
A request reception department that accepts analysis requests from requesters;
a signature generation unit that digitally signs information regarding a sample to be sealed in the container in response to the analysis request using the private key associated with the container and transmits the electronic signature to the requester;
a delivery requesting unit that requests a custodian of the container to deliver the container to which the public key related to the container or its storage location is added to the requester;
An analysis service providing device comprising:
請求項18に記載の分析サービス提供装置と、
電子署名を検証する署名検証部を備える依頼者端末と、
を備え、
前記署名検証部は、前記容器から読み取られた前記容器に関連する前記公開鍵と前記情報とを用いて、受信した前記電子署名を検証する、
分析サービス提供システム。
The analysis service providing device according to claim 18;
a client terminal equipped with a signature verification unit that verifies an electronic signature;
Equipped with
The signature verification unit verifies the received electronic signature using the public key related to the container read from the container and the information.
Analysis service provision system.
前記依頼者端末は、ユーザインタフェースを提供するインタフェース提供部をさらに備え、
前記署名検証部により検証された前記情報を前記ユーザインタフェースに表示する、
請求項19に記載の分析サービス提供システム。
The client terminal further includes an interface providing unit that provides a user interface,
displaying the information verified by the signature verification unit on the user interface;
The analysis service providing system according to claim 19.
前記依頼者端末は、情報の暗号化又は復号を行う暗号化・復号部をさらに備え、
前記署名検証部により検証された前記情報が暗号化されている場合には、前記暗号化・復号部で復号した前記情報を前記ユーザインタフェースに表示する、
請求項20に記載の分析サービス提供システム。
The client terminal further includes an encryption/decryption unit that encrypts or decrypts information,
If the information verified by the signature verification unit is encrypted, displaying the information decrypted by the encryption/decryption unit on the user interface;
The analysis service providing system according to claim 20.
試料を容器に封入して受け渡しする分析サービス用のプログラムであって、
コンピュータにより、
秘密鍵及び公開鍵を前記容器に関連付けるステップと、
依頼者から分析依頼を受け付けるステップと、
前記分析依頼に応じて前記容器に封入する試料に関する情報を、前記容器に関連する前記秘密鍵で電子署名して前記依頼者に送信するステップと、
前記容器に関連する前記公開鍵又はその格納先が付加された前記容器を、前記依頼者に配送するように前記容器の保管者に依頼するステップと、
を実行させるためのプログラム。
A program for analysis services that seals samples in containers and delivers them,
By computer,
associating a private key and a public key with the container;
a step of accepting an analysis request from a requester;
electronically signing information regarding the sample to be sealed in the container in response to the analysis request using the private key associated with the container, and transmitting the information to the requester;
requesting a custodian of the container to deliver the container to which the public key associated with the container or its storage location is added to the requester;
A program to run.
JP2022071073A 2022-04-22 2022-04-22 Analysis service providing method, analysis service providing device, analysis service providing system, and program Pending JP2023160609A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022071073A JP2023160609A (en) 2022-04-22 2022-04-22 Analysis service providing method, analysis service providing device, analysis service providing system, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022071073A JP2023160609A (en) 2022-04-22 2022-04-22 Analysis service providing method, analysis service providing device, analysis service providing system, and program

Publications (1)

Publication Number Publication Date
JP2023160609A true JP2023160609A (en) 2023-11-02

Family

ID=88515970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022071073A Pending JP2023160609A (en) 2022-04-22 2022-04-22 Analysis service providing method, analysis service providing device, analysis service providing system, and program

Country Status (1)

Country Link
JP (1) JP2023160609A (en)

Similar Documents

Publication Publication Date Title
KR100697133B1 (en) Method of supporting exchanging of electronic documents with electronic signature and information processing device
US8943310B2 (en) System and method for obtaining a digital certificate for an endpoint
US8788811B2 (en) Server-side key generation for non-token clients
JP3928589B2 (en) Communication system and method
US7146009B2 (en) Secure electronic messaging system requiring key retrieval for deriving decryption keys
US8635457B2 (en) Data certification methods and apparatus
US8033459B2 (en) System and method for secure electronic data delivery
US20070055867A1 (en) System and method for secure provisioning of encryption keys
US20110293098A1 (en) Key recovery mechanism
US20110296171A1 (en) Key recovery mechanism
JP2006060779A (en) Certificate transmission apparatus, communication system, certificate transmission method, program and recording medium
CN202424771U (en) Security service system for electronic contracts
US20080235175A1 (en) Secure Document Management System
US7451307B2 (en) Communication apparatus, communication system, communication apparatus control method and implementation program thereof
CN102497367B (en) Method and system for delivering electronic document in certifiable delivery process
CN102811211A (en) Device supporting login certification and method for login certification
CN110493272A (en) Use the communication means and communication system of multiple key
US20080235236A1 (en) Secure Document Management System
CN114679269B (en) Block chain-based credential transmission method and device, electronic equipment and storage medium
JP5012574B2 (en) Common key automatic sharing system and common key automatic sharing method
JP2012181662A (en) Account information cooperation system
CN117544393A (en) Cloud-edge cooperative data secure storage system and method based on blockchain technology
JP3914193B2 (en) Method for performing encrypted communication with authentication, authentication system and method
JP2023160609A (en) Analysis service providing method, analysis service providing device, analysis service providing system, and program
US20080235394A1 (en) Secure Document Management System