[go: up one dir, main page]

WO2024257180A1 - Estimation system, estimation method, and estimation program - Google Patents

Estimation system, estimation method, and estimation program Download PDF

Info

Publication number
WO2024257180A1
WO2024257180A1 PCT/JP2023/021776 JP2023021776W WO2024257180A1 WO 2024257180 A1 WO2024257180 A1 WO 2024257180A1 JP 2023021776 W JP2023021776 W JP 2023021776W WO 2024257180 A1 WO2024257180 A1 WO 2024257180A1
Authority
WO
WIPO (PCT)
Prior art keywords
certificate
applicant
period
unit
public 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
PCT/JP2023/021776
Other languages
French (fr)
Japanese (ja)
Inventor
修太郎 川田
満昭 秋山
将浩 白石
浩義 瀧口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to PCT/JP2023/021776 priority Critical patent/WO2024257180A1/en
Publication of WO2024257180A1 publication Critical patent/WO2024257180A1/en
Anticipated expiration legal-status Critical
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Definitions

  • the present invention relates to an estimation system, an estimation method, and an estimation program.
  • the WHOIS information for the domain in question is monitored, and if the owner information changes, it is determined to be a drop-catch event.
  • GDPR General Data Protection Regulation
  • server certificate information that has been accessed once is stored, and each time it is accessed it is checked against the stored certificate information; if it differs from the stored certificate information, it is determined that the site has been dropped and caught.
  • this is difficult, as the transfer of stored information must be carried out over a route where mutual reliability is fully guaranteed.
  • the server side when the certificate is updated, the server side must notify the client side, and the client must re-store the updated certificate, which is difficult.
  • the present invention was made in consideration of the above, and aims to make it possible to easily estimate a drop catch event.
  • the estimation system of the present invention is characterized by having a generation unit that generates a new public key and a new private key for an applicant who operates a domain when updating a certificate, an application unit that applies for certificate renewal to a certification authority using a signature of the new public key generated using the old private key before the update, a verification unit that decrypts the applied signature using the old public key to verify the applicant, and an issuance unit that issues a certificate including information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant if the verification is successful.
  • the present invention makes it easy to estimate a drop catch event.
  • FIG. 1 is a diagram for explaining an outline of the estimation system.
  • FIG. 2 is a diagram for explaining an outline of the estimation system.
  • FIG. 3 is a schematic diagram illustrating a schematic configuration of the estimation system.
  • FIG. 4 is a diagram for explaining the process of the issuing unit.
  • FIG. 5 is a diagram for explaining the process of the issuing unit.
  • FIG. 6 is a sequence diagram showing the procedure of the estimation process.
  • FIG. 7 is a flowchart showing the procedure of the estimation process.
  • FIG. 8 is a diagram illustrating a computer that executes the estimation program.
  • Outline of the estimation system 1 and 2 are diagrams for explaining an outline of the estimation system.
  • the estimation system of this embodiment verifies that the applicant of the current server certificate is the same as that of the server certificate to be newly issued.
  • the term "update of a server certificate” here refers to an update that is performed while the current server certificate is valid.
  • the applicant on the server 10 side when applying for a server certificate renewal, the applicant on the server 10 side generates a key pair of a new public key and a new private key (see (1)), and creates a CSR (Certificate Signing Request) based on this key pair (see (2)).
  • the applicant also sends the created CSR and a signature of the new public key encrypted with the old private key corresponding to the server certificate that has been in operation (see (3)) to the certification authorities (hereafter referred to as CA, Certificate Authorities) 20 (see (4)).
  • CA Certificate Authority
  • CA20 checks that the current server certificate has not expired and decrypts this signature using the corresponding old public key (see (7)). In this way, CA20 verifies whether the applicant for the server certificate renewal is the same person as the applicant for the current server certificate.
  • CA 20 returns the server certificate to server 10, including information that enables the period of time that has elapsed since the initial issuance of the server certificate to the applicant, as described below (see (9)). Since it is guaranteed that the applicant is the same before and after the previous renewal, the derived period of time that has elapsed since the initial issuance of the server certificate can be said to be the period of continuous operation by the same operator, as shown in the example of Figure 2.
  • the client 30 when the client 30 makes a connection request to the server 10 (see (10)), it can refer to the presented server certificate (see (11)-(12)) and find out how long the domain has been continuously operated by the same operator. Note that it is assumed that the client 30 has a function such as an add-on that can read information from the server certificate that can derive the period of time that has elapsed since the initial issuance of the server certificate.
  • the client 30 considers whether to allow access, taking into account the possibility that the operator may have changed.
  • the client 30 determines that there may be a change in operator or that a drop catch may have occurred, and then considers whether to allow access.
  • the information that is incorporated into the server certificate issued by CA20 and from which the number of days that have elapsed since the initial issuance of the server certificate to the applicant can be derived is, for example, the same applicant period, which indicates the number of days of continuous operation by the applicant of the current server certificate in the past, or information indicating the date and time of the initial issuance of the applicant's server certificate, as described below.
  • the functionality of this embodiment is implemented in the intermediate CA and does not apply to the root CA, but the CSR that the intermediate CA applies for from the root CA is within the scope of the RFC specifications, as described below, and signing by the root CA can be implemented without any problems.
  • Fig. 3 is a schematic diagram illustrating a schematic configuration of an estimation system.
  • the estimation system 1 of this embodiment includes a server 10, a CA 20, and a client 30.
  • the server 10 transmits a CSR to the CA 20 to request an update of the server guarantee.
  • the CA verifies the CSR and returns the updated server guarantee.
  • the client 30 accesses the site operated by the server 10 via a user's browser or mechanically via a script. At that time, the client 30 checks the server certificate 14a of the server 10 to confirm the period of operation of the server 10 by the same operator, and determines whether the operator has changed or whether there is a possibility of a drop catch.
  • the server 10 is realized by a general-purpose computer such as a workstation, and includes an input unit 11 , an output unit 12 , a communication control unit 13 , a storage unit 14 , and a control unit 15 .
  • the input unit 11 is realized using input devices such as a keyboard and a mouse, and inputs various instruction information such as a command to start processing to the control unit 15 in response to input operations by an operator.
  • the output unit 12 is realized by a display device such as a liquid crystal display, a printing device such as a printer, etc.
  • the communication control unit 13 is realized by a NIC (Network Interface Card) or the like, and controls communication between the control unit 15 and external devices via a network.
  • the communication control unit 13 controls communication between the control unit 15 and the CA 20, the client 30, and a management device that manages various data used in the estimation process described below.
  • the storage unit 14 is realized by a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk.
  • the storage unit 14 stores in advance the processing program that operates the server 10 and data used during execution of the processing program, or stores the data temporarily each time processing is performed.
  • the storage unit 14 stores a server certificate 14a that is generated and used in the estimation process described below.
  • the storage unit 14 may be configured to communicate with the control unit 15 via the communication control unit 13.
  • the control unit 15 is realized using a CPU (Central Processing Unit), NP (Network Processor), FPGA (Field Programmable Gate Array), etc., and executes a processing program stored in memory. As a result, the control unit 15 functions as a generation unit 15a and an application unit 15b, as exemplified in FIG. 3, and executes the estimation process described below. Note that each of these functional units may be implemented in different hardware. The control unit 15 may also have other functional units.
  • the generation unit 15a When updating a server certificate, the generation unit 15a generates a new public key and a new private key for the applicant who operates the domain. Specifically, the generation unit 15a generates a pair of a new public key for the server certificate for which an update is being requested, and a new private key corresponding to this.
  • the application unit 15b applies to the CA 20 for the renewal of the server certificate 14a, using the signature of the new public key generated by the old private key before renewal. Specifically, the application unit 15b creates a CSR requesting renewal of the server certificate, and transmits this CSR and the signature of the new public key encrypted by the old private key corresponding to the server certificate 14a that has been in use to the CA 20. At that time, the application unit 15b includes in the CSR the value of information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant, as described below.
  • the application unit 15b also receives an updated server certificate issued by the issuing unit 25b of the CA 20, which will be described later, and updates the server certificate 14a in the memory unit 14.
  • the control unit 25 functions as a verification unit 25a and an issuing unit 25b, as shown in FIG. 3.
  • the verification unit 25a decrypts the applied signature with the old public key to verify the applicant.
  • the verification unit 25a refers to the CT (Certificate Transparency) Log, which is the log of the previous server certificate, and obtains the old public key corresponding to the applicant's current server certificate 14a.
  • the verification unit 25a also confirms that the current server certificate has not expired.
  • the verification unit 25a then verifies whether the CSR signature can be decrypted with the old public key. In this way, the verification unit 25a verifies whether the applicant for server certificate renewal is the same person as the applicant for the current server certificate 14a.
  • the verification unit 25a notifies the server 10 and prompts the user to resubmit the correct signature.
  • the issuing unit 25b issues a server certificate including information for deriving the time that has elapsed since the initial issuance of the certificate to the applicant.
  • the verifying unit 25a verifies whether the information included in the CSR for deriving the time that has elapsed since the initial issuance of the certificate to the applicant is correct, and if the verification is successful, the issuing unit 25b writes the information in the server certificate and issues an updated server certificate.
  • the issuing unit 25b also returns the issued updated server certificate to the server 10.
  • the server 10 updates the current server certificate 14a using the returned updated server certificate, as described above.
  • the period that has elapsed since the initial issuance of the certificate to the applicant can be said to be the period of continuous operation by the same person, as shown in the example in Figure 2.
  • the issuing unit 25b therefore includes, in a predetermined extension field of the server certificate, information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant.
  • the issuing unit 25b incorporates, into the server certificate, information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant, using the extension field of the public key certificate period defined in X.509 of RFC5280.
  • Fig. 4 and Fig. 5 are diagrams for explaining the processing of the issuing unit.
  • the issuing unit 25b sets the period during which the applicant for the server certificate remains the same, as shown in Fig. 4.
  • the type-id is expressed as a character string for the purpose of explanation, but in reality it is an OID based on ASN.1.
  • the issuing unit 25b defines "ApplicantPeriod" in the extension field "OtherName” in the Subject Alternative Name of the public key certificate period defined in X.509 of RFC5280.
  • This ApplicantPeriod (same applicant period) refers to the period during which the site has been continuously operated by the same applicant, i.e., the same operator, from the time when the currently referenced server certificate first became valid.
  • the ApplicantPeriod is set in the server certificate.
  • the number of days (10 days) that have passed since the server certificate was issued can be determined from the difference between the Not Before date and time (February 22, 2023) of Validity written in bold in area ⁇ and the current date and time (for example, March 5, 2023).
  • the number of days (360 days) that the site has been continuously operated by the same operator at the time the server certificate was validated can be determined from the ApplicantPeriod written in area ⁇ .
  • the period that has passed since the server certificate was first issued to the same applicant that is, the number of days that the site has been continuously operated by the same operator (370 days), is derived.
  • ApplicantPeriod 0.
  • the issuing unit 25b sets the issuance date and time of the first server certificate for the same applicant, as exemplified in FIG. 5. Specifically, the issuing unit 25b defines "Applicant Not Before” in the "OtherName” extension field in the Subject Alternative Name of the public key certificate period defined in X.509 of RFC5280, as exemplified in FIG. 5(a). This Applicant Not Before (the applicant's initial certificate issuance date and time) indicates the first day that the site began to be continuously operated by the same applicant, i.e., the same operator.
  • Applicant Not Before is set in the server warranty.
  • the derivation unit 35b of the client 30 which will be described later, derives the number of days that have passed since the server certificate was issued (370 days), i.e., the number of days that the site has been continuously operated by the same operator, from the difference between the date and time of Applicant Not Before written in area ⁇ (February 17, 2023) and the current date and time (for example, March 5, 2023).
  • the applicant's first CSR does not contain the old private key and does not include a signature.
  • the Applicant Not Before is the same as the Not Before date and time of the server certificate issue.
  • the client 30 includes a control unit 35 implemented by a CPU, NP, FPGA, or the like, and executing a processing program stored in memory.
  • the client 30 also includes a storage unit 34 implemented by a semiconductor memory element such as a RAM, flash memory, or the like.
  • the client 30 also includes a communication control unit (not shown), and communicates with the server 10, other network devices, or the like via the communication control unit.
  • the client 30 also includes an output unit (not shown) implemented by a display device such as a liquid crystal display, a speaker, or the like.
  • This client 30 accesses sites operated by the server 10 either via a user's browser or mechanically via a script. Note that all legitimate sites are assumed to be HTTPS-compatible.
  • the control unit 35 functions as an acquisition unit 35a, a derivation unit 35b, and a determination unit 35c.
  • the acquisition unit 35a acquires the issued server certificate 14a.
  • the control unit 35 accesses a site operated by the server 10 by a user via a browser, or mechanically by a script.
  • the acquisition unit 35a makes a connection request to the server 10 and acquires the server certificate 14a.
  • the acquisition unit 35a also refers to the acquired server certificate 14a and checks information for deriving the period of time that has elapsed since the certificate was first issued to the applicant.
  • the derivation unit 35b uses information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant to derive the operation period of the domain by the same applicant. Specifically, the derivation unit 35b derives the operation period of the domain by the same applicant as shown in FIG. 4(b) or FIG. 5(b).
  • the determination unit 35c uses the derived operation period to determine whether the operator may have been changed or whether a drop catch may have occurred.
  • determination unit 35c determines that the operator may have changed since the previous access. In other words, while the period of continuous operation by the same operator is trustworthy, determination unit 35c determines that the operator may have changed during a period that exceeds this period, or that a drop catch may have occurred.
  • the determination unit 35c may, for example, stop mechanical script access or present a warning message to the user attempting access, stating that "a drop catch may have occurred.”
  • the determination unit 35c determines that the operator may have changed if the derived operation period is equal to or shorter than a predetermined period. In other words, the determination unit 35c determines that the operator may have changed, that is, that a drop catch may have occurred, if the continuous operation period by the same operator is a short period equal to or shorter than a predetermined period stipulated according to an internal company policy, etc., in which drop catch may be misused and cause damage.
  • the determination unit 35c determines that a drop catch has occurred, it presents a warning message to the user attempting to access the site, stating that "a drop catch may have occurred.” For example, for a site that is assumed to have been in operation for a long time, a long period of time is set as the predetermined period. If the operation period derived from this period is short, it is possible to alert the user.
  • Fig. 6 is a sequence diagram showing the estimation process procedure.
  • Fig. 6 illustrates the processing procedure in the server 10 and the CA 20.
  • the sequence in Fig. 6 is started, for example, at the timing when an operation input is made to instruct the start of the estimation process.
  • the generation unit 15a generates a new public key and a new private key for the applicant who operates the domain when updating the server certificate (step S1). Specifically, the generation unit 15a generates a pair of a new public key for the server certificate for which an update is being requested, and a new private key corresponding to the new public key.
  • step S2 the application unit 15b encrypts and signs the new public key using the old private key corresponding to the server certificate 14a that has been in use until now.
  • the application unit 15b also creates a CSR requesting renewal of the server certificate. At that time, the application unit 15b includes in the CSR the value of predetermined information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant, as described below (step S3).
  • the CSR may include the Applicant Period or Applicant Not Before values as specified values.
  • the Applicant Not Before value of the current server certificate 14a is used as is.
  • the application unit 15b transmits the CSR and the signature to the CA 20 (step S4).
  • verification unit 25a decrypts the applied signature with the old public key to verify the applicant. Specifically, verification unit 25a refers to the CTLog, which is a log of previous server certificates, and obtains the old public key that corresponds to the applicant's current server certificate 14a. Verification unit 25a then verifies whether the CSR signature can be decrypted with the old public key (step S5).
  • CTLog is a log of previous server certificates
  • the verification unit 25a also verifies whether the information included in the CSR for deriving the elapsed time since the initial issuance of the certificate to the applicant is correct (step S6). For example, the verification unit 25a refers to the information in the CTLog to verify whether the values of Applicant Period or Applicant Not Before included in the CSR are correct.
  • the issuing unit 25b issues an updated server certificate by including in the server certificate information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant.
  • the issuing unit 25b also returns the issued updated server certificate to the server 10 (step S7).
  • the application unit 15b updates the current server certificate 14a using the returned updated server certificate. This completes the process.
  • FIG. 7 shows an example of the processing procedure in the client 30.
  • the flowchart in FIG. 7 starts, for example, when an operational input is made to instruct the start of the reflection process.
  • the acquisition unit 35a makes a connection request to the server 10 and acquires the server certificate 14a.
  • the acquisition unit 35a also references the acquired server certificate 14a and acquires information for deriving the period of time that has elapsed since the certificate was first issued to the applicant (step S11).
  • the acquisition unit 35a acquires the Applicant Period or Applicant Not Before recorded in the server certificate 14a as information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant.
  • the derivation unit 35b uses the specified information to derive the period of time that has elapsed since the initial issuance of the server certificate 14a to the same applicant (step S12).
  • the period of time that has elapsed corresponds to the period of time that the domain has been in operation by the same applicant up to the present.
  • the derivation unit 35b obtains the number of days since the issuance of the current server certificate 14a as the operation period. On the other hand, if the Applicant Period is not 0, the derivation unit 35b obtains the operation period by adding the Applicant Period and the number of days since the issuance of the current server certificate 14a.
  • the derivation unit 35b obtains the number of days that have elapsed from the date and time of Applicant Not Before to the present as the operation period.
  • the determination unit 35c uses the derived operation period to determine whether or not there is a possibility that the operator has been changed or that a drop catch has occurred. For example, the determination unit 35c compares the derived operation period with a predetermined period stipulated according to an internal company policy, etc., during which a drop catch may be misused and damage may occur (step S13).
  • step S13 If the derived operation period exceeds a predetermined period (step S13, Yes), the operation period is deemed reliable, and the determination unit 35c determines that there is no possibility of a change in the operator or of a drop catch (step S14). In this case, the client 30 allows access by the user. A series of processes is completed.
  • step S13 determines that the operator may have changed. Then, the determination unit 35c displays a warning message to the user stating that "a drop catch may have occurred" (step S15). This completes the series of processes.
  • the generation unit 15a generates a new public key and a new private key for an applicant who operates a domain when updating a server certificate.
  • the application unit 15b applies to the CA 20 for updating the server certificate 14a using a signature of the new public key generated by the old private key before the update.
  • the verification unit 25a decrypts the applied signature by the old public key to verify the applicant. If the verification is successful, the issuance unit 25b issues a server certificate including information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant.
  • the information used to derive the period of time that has elapsed since the first issuance of a certificate to an applicant is the period during which the applicant for the certificate remains the same, or the date and time of the first issuance of the certificate to the applicant.
  • the period that has elapsed since the initial issuance of the derived server certificate can be said to be the period of continuous operation by the same operator. Therefore, a user attempting to access a domain can refer to the server certificate and easily find out the period of continuous operation of the domain by the same operator. This makes it easy for users to infer a drop-catch event.
  • the issuing unit 25b also includes information in a specified extension area of the certificate for deriving the period of time that has elapsed since the certificate was first issued to the applicant.
  • the acquisition unit 35a acquires the issued server certificate 14a.
  • the derivation unit 35b uses information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant to derive the operation period of the domain by the same applicant.
  • the determination unit 35c uses the derived operation period to determine whether or not the operator may have changed.
  • the determination unit 35c determines that the operator may have changed if the period between the previous access to the server 10 and the current access to the server 10 is equal to or longer than the derived operation period.
  • the determination unit 35c determines that the operator may have been changed.
  • a program in which the processes executed by each device (server 10, CA 20, client 30) of the estimation system 1 according to the embodiment are written in a language executable by a computer can also be created.
  • the server 10 can be implemented by installing an estimation program that executes the above estimation process as package software or online software on a desired computer.
  • the information processing device can function as the server 10 by executing the above estimation program on the information processing device.
  • the information processing device also includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone System), as well as slate terminals such as PDA (Personal Digital Assistant).
  • the functions of the server 10 may be implemented on a cloud server.
  • FIG. 8 is a diagram showing an example of a computer that executes an estimation program.
  • the computer 1000 has, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012.
  • the ROM 1011 stores a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to a hard disk drive 1031.
  • the disk drive interface 1040 is connected to a disk drive 1041.
  • a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1041.
  • the serial port interface 1050 is connected to a mouse 1051 and a keyboard 1052, for example.
  • the video adapter 1060 is connected to a display 1061, for example.
  • the hard disk drive 1031 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. Each piece of information described in the above embodiment is stored, for example, in the hard disk drive 1031 or memory 1010.
  • the estimation program is stored in the hard disk drive 1031, for example, as a program module 1093 in which instructions to be executed by the computer 1000 are written. Specifically, the program module 1093 in which each process executed by the server 10 described in the above embodiment is written is stored in the hard disk drive 1031.
  • data used for information processing by the estimation program is stored as program data 1094, for example, in the hard disk drive 1031.
  • the CPU 1020 reads the program module 1093 and program data 1094 stored in the hard disk drive 1031 into the RAM 1012 as necessary, and executes each of the above-mentioned procedures.
  • the program module 1093 and program data 1094 related to the estimation program are not limited to being stored in the hard disk drive 1031, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1041 or the like.
  • the program module 1093 and program data 1094 related to the estimation program may be stored in another computer connected via a network such as a LAN (Local Area Network) or a WAN (Wide Area Network), and read by the CPU 1020 via the network interface 1070.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

In a server (10) of an estimation system (1), a generation unit (15a) generates a new public key and a new secret key of an applicant who operates a domain when renewing a server certificate (14a). An application unit (15b) submits an application for renewal of the server certificate (14a) to a CA (20) by using the signature of the generated new public key based on an old secret key before the renewal. In the CA (20), a verification unit (25a) decrypts the signature of said application by using an old public key to verify the applicant. When the verification is successful, an issuing unit (25b) issues the server certificate (14a) including information for deriving an elapsed period from the initial issuance of the server certificate (14a) to the applicant.

Description

推定システム、推定方法、および推定プログラムEstimation system, estimation method, and estimation program

 本発明は、推定システム、推定方法、および推定プログラムに関する。 The present invention relates to an estimation system, an estimation method, and an estimation program.

 ドメインが破棄され再取得が可能となった直後に、第三者により取得されるドロップキャッチと呼ばれる事象が知られている。悪意のある第三者によるドロップキャッチが発生すると、不正コンテンツ配置等の被害が発生する恐れがある(非特許文献1参照)。  There is a phenomenon known as drop-catch, where a domain is revoked and then immediately acquired by a third party, and then the domain is re-acquired. When drop-catch occurs by a malicious third party, there is a risk of causing damage such as the placement of unauthorized content (see Non-Patent Document 1).

「[注意喚起]セキュリティリスク回避のため、旧Visionalistをご利用いただいていた法人のお客さまにおける“tracer.jp”タグ削除のお願い」、[online]、2022年5月18日、NTTコム オンライン、[2023年5月16日検索]、インターネット<URL:https://www.nttcoms.com/news/2022051801/>"[Warning] To avoid security risks, we ask corporate customers who used the old Visionalist to delete the "tracer.jp" tag," [online], May 18, 2022, NTT Com Online, [Retrieved May 16, 2023], Internet <URL: https://www.nttcoms.com/news/2022051801/>

 しかしながら、従来、ドロップキャッチ事象を特定することが困難だった。例えば、当該ドメインが所属するTLD(Top Level Domain)のゾーンファイルを継続的に監視して、ドメインがゾーンファイルから削除された後に再出現するまでの期間が非常に短かった場合、当該ドメインにおけるドロップキャッチ事象が発生した可能性がある。そのためには、ドメインにアクセスする時点のゾーン情報と過去のゾーン情報とを照合する必要があるが、日常的なブラウザアクセスやスクリプト動作の度に照合することは現実的ではない。 However, in the past, it was difficult to identify a drop catch event. For example, if the zone file of the TLD (Top Level Domain) to which the domain belongs is continuously monitored and the domain is deleted from the zone file and then reappears very quickly, it is possible that a drop catch event has occurred in that domain. To do this, it is necessary to compare the zone information at the time the domain is accessed with past zone information, but it is not realistic to compare it every time a browser is accessed or a script is executed on a daily basis.

 または、当該ドメインのWHOIS情報を監視して、所有者情報が変化した場合にドロップキャッチ事象と判断する。しかし、GDPR(General Data Protection Regulation)の推進やホスティングドメインの増加により、WHOISデータベースから得られる情報に制限があり、サイト運用者が変更されたことを特定することが困難な場合がある。 Alternatively, the WHOIS information for the domain in question is monitored, and if the owner information changes, it is determined to be a drop-catch event. However, due to the promotion of General Data Protection Regulation (GDPR) and the increase in hosting domains, there are limitations to the information that can be obtained from the WHOIS database, and it may be difficult to identify that the site operator has changed.

 あるいは、一度アクセスしたサーバ証明書情報を記憶しておき、アクセス時に毎回照合を行い、記憶した証明書情報と異なる場合に、サイトがドロップキャッチされたと判断する。しかしながら、記憶する情報の受け渡しは、相互の信頼性が十分に保証された経路で実施する必要があるため、困難である。また、証明書が更新された場合には、サーバ側からクライアント側に通知して、クライアントが更新された証明書を再度記憶する必要があるため、困難である。 Alternatively, server certificate information that has been accessed once is stored, and each time it is accessed it is checked against the stored certificate information; if it differs from the stored certificate information, it is determined that the site has been dropped and caught. However, this is difficult, as the transfer of stored information must be carried out over a route where mutual reliability is fully guaranteed. Also, when the certificate is updated, the server side must notify the client side, and the client must re-store the updated certificate, which is difficult.

 本発明は、上記に鑑みてなされたものであって、ドロップキャッチ事象を容易に推定可能とすることを目的とする。 The present invention was made in consideration of the above, and aims to make it possible to easily estimate a drop catch event.

 上述した課題を解決し、目的を達成するために、本発明に係る推定システムは、証明書の更新に際し、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する生成部と、更新前の旧秘密鍵による、生成された前記新公開鍵の署名を用いて、認証局に証明書の更新を申請する申請部と、申請された前記署名を旧公開鍵により復号して前記申請者の検証を行う検証部と、前記検証が成功した場合に、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含む証明書を発行する発行部と、を有することを特徴とする。 In order to solve the above-mentioned problems and achieve the object, the estimation system of the present invention is characterized by having a generation unit that generates a new public key and a new private key for an applicant who operates a domain when updating a certificate, an application unit that applies for certificate renewal to a certification authority using a signature of the new public key generated using the old private key before the update, a verification unit that decrypts the applied signature using the old public key to verify the applicant, and an issuance unit that issues a certificate including information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant if the verification is successful.

 本発明によれば、ドロップキャッチ事象を推定することが容易に可能となる。 The present invention makes it easy to estimate a drop catch event.

図1は、推定システムの概要を説明するための図である。FIG. 1 is a diagram for explaining an outline of the estimation system. 図2は、推定システムの概要を説明するための図である。FIG. 2 is a diagram for explaining an outline of the estimation system. 図3は、推定システムの概略構成を例示する模式図である。FIG. 3 is a schematic diagram illustrating a schematic configuration of the estimation system. 図4は、発行部の処理を説明するための図である。FIG. 4 is a diagram for explaining the process of the issuing unit. 図5は、発行部の処理を説明するための図である。FIG. 5 is a diagram for explaining the process of the issuing unit. 図6は、推定処理手順を示すシーケンス図である。FIG. 6 is a sequence diagram showing the procedure of the estimation process. 図7は、推定処理手順を示すフローチャートである。FIG. 7 is a flowchart showing the procedure of the estimation process. 図8は、推定プログラムを実行するコンピュータを例示する図である。FIG. 8 is a diagram illustrating a computer that executes the estimation program.

 以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。 Below, one embodiment of the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to this embodiment. In addition, in the drawings, the same parts are denoted by the same reference numerals.

[推定システムの概要]
 図1および図2は、推定システムの概要を説明するための図である。本実施形態の推定システムは、サーバ証明書の更新時に、現行のサーバ証明書と新たに発行するサーバ証明書との申請者が同一であることを検証する。ここで言う「サーバ証明書の更新」とは、現行のサーバ証明書が有効である期間中に行われる更新を差す。
[Outline of the estimation system]
1 and 2 are diagrams for explaining an outline of the estimation system. When updating a server certificate, the estimation system of this embodiment verifies that the applicant of the current server certificate is the same as that of the server certificate to be newly issued. The term "update of a server certificate" here refers to an update that is performed while the current server certificate is valid.

 具体的には、図1に例示するように、推定システム1において、サーバ10側の申請者は、サーバ証明書の更新申請時に、新公開鍵・新秘密鍵の鍵ペアを生成し((1)参照)、この鍵ペアに基づいてCSR(Certificate Signing Request)を作成する((2)参照)。また申請者は、作成したCSRと、これまでに運用していたサーバ証明書に対応する旧秘密鍵により暗号化した新公開鍵の署名((3)参照)とを、認証局(以下、CA, Certificate Authorities)20に送る((4)参照)。 Specifically, as shown in FIG. 1, in the estimation system 1, when applying for a server certificate renewal, the applicant on the server 10 side generates a key pair of a new public key and a new private key (see (1)), and creates a CSR (Certificate Signing Request) based on this key pair (see (2)). The applicant also sends the created CSR and a signature of the new public key encrypted with the old private key corresponding to the server certificate that has been in operation (see (3)) to the certification authorities (hereafter referred to as CA, Certificate Authorities) 20 (see (4)).

 CA20は、サーバ証明書発行((5)~(8)参照)に際し、この署名を、現行のサーバ証明書が失効していないことを確認し、これに対応する旧公開鍵を用いて復号化する((7)参照)。これにより、CA20は、サーバ証明書更新の申請者が現行のサーバ証明書の申請者と同一人物か否かを検証する。 When issuing a server certificate (see (5) to (8)), CA20 checks that the current server certificate has not expired and decrypts this signature using the corresponding old public key (see (7)). In this way, CA20 verifies whether the applicant for the server certificate renewal is the same person as the applicant for the current server certificate.

 また、CA20は、検証が成功した場合に、後述するように、当該申請者に対するサーバ証明書の初回発行からの経過期間を導出可能な情報をサーバ証明書に含めて、サーバ10に返送する((9)参照)。ここで、過去の更新の前後で申請者が同一であることが保証されているため、図2に例示するように、導出されたサーバ証明書の初回発行からの経過期間は、同一の運用者による継続した運用期間といいかえることができる。 If the verification is successful, CA 20 returns the server certificate to server 10, including information that enables the period of time that has elapsed since the initial issuance of the server certificate to the applicant, as described below (see (9)). Since it is guaranteed that the applicant is the same before and after the previous renewal, the derived period of time that has elapsed since the initial issuance of the server certificate can be said to be the period of continuous operation by the same operator, as shown in the example of Figure 2.

 これにより、クライアント30がサーバ10に接続要求する際に((10)参照)、提示されたサーバ証明書を参照し((11)~(12)参照)、当該ドメインの同一の運用者による継続した運用期間を知ることが可能となる。なお、クライアント30は、サーバ証明書の初回発行からの経過期間を導出可能な情報を、サーバ証明書から読み取るアドオン等の機能を有することを前提とする。 As a result, when the client 30 makes a connection request to the server 10 (see (10)), it can refer to the presented server certificate (see (11)-(12)) and find out how long the domain has been continuously operated by the same operator. Note that it is assumed that the client 30 has a function such as an add-on that can read information from the server certificate that can derive the period of time that has elapsed since the initial issuance of the server certificate.

 そして、クライアント30は、例えば、前回のアクセスから今回のアクセスまでの経過時間が、同一の運用者による継続した運用期間以上の長い期間である場合には、運用者が変化している可能性があることを踏まえてアクセス可否を検討する。 Then, if the time that has elapsed between the previous access and the current access is longer than the period of continuous operation by the same operator, the client 30 considers whether to allow access, taking into account the possibility that the operator may have changed.

 あるいは、クライアント30は、例えば、同一の運用者による継続した運用期間が、ドロップキャッチが悪用され被害が発生し得る所定の期間以下の短期間である場合に、運用者が変化している可能性があること、あるいはドロップキャッチが発生した可能性があるものと判定した上でアクセス可否を検討する。 Alternatively, for example, if the period of continuous operation by the same operator is short, less than a certain period during which a drop catch may be misused and cause damage, the client 30 determines that there may be a change in operator or that a drop catch may have occurred, and then considers whether to allow access.

 なお、CA20が発行するサーバ証明書に組み込まれる、当該申請者に対するサーバ証明書の初回発行からの経過日数を導出可能な情報とは、後述するように、例えば、現在のサーバ証明書の申請者による過去の継続した運用日数を表す同一申請者期間、または申請者のサーバ証明書の初回発行日時を示す情報である。 The information that is incorporated into the server certificate issued by CA20 and from which the number of days that have elapsed since the initial issuance of the server certificate to the applicant can be derived is, for example, the same applicant period, which indicates the number of days of continuous operation by the applicant of the current server certificate in the past, or information indicating the date and time of the initial issuance of the applicant's server certificate, as described below.

 また、本実施形態の機能は、中間CAに実装され、ルートCAは対象外であるが、中間CAがルートCAに申請するCSRは、後述するようにRFCの仕様の範囲内であり、ルートCAによる署名は支障なく実施可能である。 In addition, the functionality of this embodiment is implemented in the intermediate CA and does not apply to the root CA, but the CSR that the intermediate CA applies for from the root CA is within the scope of the RFC specifications, as described below, and signing by the root CA can be implemented without any problems.

[推定システムの構成]
 図3は、推定システムの概略構成を例示する模式図である。図3に例示するように、本実施形態の推定システム1は、サーバ10、CA20、クライアント30を含んで構成される。サーバ10は、CA20に対して、サーバ保証書の更新を申請するCSRを送信する。CAは、CSRを検証して更新したサーバ保証書を返送する。
[Configuration of Estimation System]
Fig. 3 is a schematic diagram illustrating a schematic configuration of an estimation system. As illustrated in Fig. 3, the estimation system 1 of this embodiment includes a server 10, a CA 20, and a client 30. The server 10 transmits a CSR to the CA 20 to request an update of the server guarantee. The CA verifies the CSR and returns the updated server guarantee.

 クライアント30は、サーバ10で運用されるサイトに対し、ユーザによるブラウザ経由のアクセス、あるいはスクリプトによる機械的なアクセスを行う。その際に、サーバ10のサーバ証明書14aを確認することにより、サーバ10の同一運用者による運用期間を確認し、運用者の変更の有無やドロップキャッチの可能性の有無を判定する。 The client 30 accesses the site operated by the server 10 via a user's browser or mechanically via a script. At that time, the client 30 checks the server certificate 14a of the server 10 to confirm the period of operation of the server 10 by the same operator, and determines whether the operator has changed or whether there is a possibility of a drop catch.

[サーバの構成]
 サーバ10は、ワークステーション等の汎用コンピュータで実現され、入力部11、出力部12、通信制御部13、記憶部14、および制御部15を備える。
[Server configuration]
The server 10 is realized by a general-purpose computer such as a workstation, and includes an input unit 11 , an output unit 12 , a communication control unit 13 , a storage unit 14 , and a control unit 15 .

 入力部11は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部15に対して処理開始などの各種指示情報を入力する。出力部12は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。 The input unit 11 is realized using input devices such as a keyboard and a mouse, and inputs various instruction information such as a command to start processing to the control unit 15 in response to input operations by an operator. The output unit 12 is realized by a display device such as a liquid crystal display, a printing device such as a printer, etc.

 通信制御部13は、NIC(Network Interface Card)等で実現され、ネットワークを介した外部の装置と制御部15との通信を制御する。例えば、通信制御部13は、CA20や、クライアント30や、後述する推定処理に用いられる各種データ等を管理する管理装置等と制御部15との通信を制御する。 The communication control unit 13 is realized by a NIC (Network Interface Card) or the like, and controls communication between the control unit 15 and external devices via a network. For example, the communication control unit 13 controls communication between the control unit 15 and the CA 20, the client 30, and a management device that manages various data used in the estimation process described below.

 記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14には、サーバ10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが予め記憶され、あるいは処理の都度一時的に記憶される。例えば、記憶部14は、後述する推定処理で生成され用いられるサーバ証明書14a等を記憶する。なお、記憶部14は、通信制御部13を介して制御部15と通信する構成でもよい。 The storage unit 14 is realized by a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 14 stores in advance the processing program that operates the server 10 and data used during execution of the processing program, or stores the data temporarily each time processing is performed. For example, the storage unit 14 stores a server certificate 14a that is generated and used in the estimation process described below. The storage unit 14 may be configured to communicate with the control unit 15 via the communication control unit 13.

 制御部15は、CPU(Central Processing Unit)やNP(Network Processor)やFPGA(Field Programmable Gate Array)等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部15は、図3に例示するように、生成部15a、および申請部15bとして機能して、後述する推定処理を実行する。なお、これらの機能部は、それぞれが異なるハードウェアに実装されてもよい。また、制御部15は、その他の機能部を備えてもよい。 The control unit 15 is realized using a CPU (Central Processing Unit), NP (Network Processor), FPGA (Field Programmable Gate Array), etc., and executes a processing program stored in memory. As a result, the control unit 15 functions as a generation unit 15a and an application unit 15b, as exemplified in FIG. 3, and executes the estimation process described below. Note that each of these functional units may be implemented in different hardware. The control unit 15 may also have other functional units.

 生成部15aは、サーバ証明書の更新時に、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する。具体的には、生成部15aは、更新の申請を行うサーバ証明書用の新公開鍵と、これに対応する新秘密鍵とのペアを生成する。 When updating a server certificate, the generation unit 15a generates a new public key and a new private key for the applicant who operates the domain. Specifically, the generation unit 15a generates a pair of a new public key for the server certificate for which an update is being requested, and a new private key corresponding to this.

 申請部15bは、更新前の旧秘密鍵による、生成された新公開鍵の署名を用いて、CA20にサーバ証明書14aの更新を申請する。具体的には、申請部15bは、サーバ証明書の更新を請求するCSRを作成し、このCSRと、これまでに運用していたサーバ証明書14aに対応する旧秘密鍵により暗号化した新公開鍵の署名とを、CA20に送信する。その際に、申請部15bは、後述する、当該申請者に対するサーバ証明書14aの初回発行時からの経過期間を導出するための情報の値をCSRに含める。 The application unit 15b applies to the CA 20 for the renewal of the server certificate 14a, using the signature of the new public key generated by the old private key before renewal. Specifically, the application unit 15b creates a CSR requesting renewal of the server certificate, and transmits this CSR and the signature of the new public key encrypted by the old private key corresponding to the server certificate 14a that has been in use to the CA 20. At that time, the application unit 15b includes in the CSR the value of information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant, as described below.

 また、申請部15bは、後述するCA20の発行部25bから発行された更新サーバ証明書を受け取って、記憶部14のサーバ証明書14aを更新する。 The application unit 15b also receives an updated server certificate issued by the issuing unit 25b of the CA 20, which will be described later, and updates the server certificate 14a in the memory unit 14.

[認証局(CA)の構成]
 CA20は、CPUやNPやFPGA等で実現され、メモリに記憶された処理プログラムを実行する制御部25を備える。また、CA20は、RAM、フラッシュメモリ等の半導体メモリ素子で実現される記憶部24を備える。また、CA20は、図示しない通信制御部を備え、通信制御部を介してサーバ10や他のネットワーク装置等と通信する。また、CA20は、液晶ディスプレイなどの表示装置やスピーカ等によって実現される不図示の出力部を備える。
[Configuration of the Certification Authority (CA)]
The CA 20 includes a control unit 25 that is realized by a CPU, an NP, an FPGA, or the like, and executes a processing program stored in memory. The CA 20 also includes a storage unit 24 that is realized by a semiconductor memory element such as a RAM or a flash memory. The CA 20 also includes a communication control unit (not shown), and communicates with the server 10, other network devices, and the like via the communication control unit. The CA 20 also includes an output unit (not shown) that is realized by a display device such as a liquid crystal display, a speaker, and the like.

 制御部25は、図3に示したように、検証部25a、および発行部25bとして機能する。まず、検証部25aは、申請された署名を旧公開鍵により復号して申請者の検証を行う。具体的には、検証部25aは、これまでのサーバ証明書のログであるCT(Certificate Transparency)Logを参照し、当該申請者の現行のサーバ証明書14aに対応する旧公開鍵を取得する。また、検証部25aは、現行のサーバ証明書が失効していないことも確認する。そして、検証部25aは、CSRの署名が旧公開鍵で復号できるか否かを検証する。これにより、検証部25aは、サーバ証明書更新の申請者が現行のサーバ証明書14aの申請者と同一人物か否かを検証する。 The control unit 25 functions as a verification unit 25a and an issuing unit 25b, as shown in FIG. 3. First, the verification unit 25a decrypts the applied signature with the old public key to verify the applicant. Specifically, the verification unit 25a refers to the CT (Certificate Transparency) Log, which is the log of the previous server certificate, and obtains the old public key corresponding to the applicant's current server certificate 14a. The verification unit 25a also confirms that the current server certificate has not expired. The verification unit 25a then verifies whether the CSR signature can be decrypted with the old public key. In this way, the verification unit 25a verifies whether the applicant for server certificate renewal is the same person as the applicant for the current server certificate 14a.

 検証が失敗した場合には、検証部25aは、サーバ10に通知して正しい署名の再提出を促す。 If the verification fails, the verification unit 25a notifies the server 10 and prompts the user to resubmit the correct signature.

 一方、検証が成功した場合に、発行部25bが、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含むサーバ証明書を発行する。具体的には、例えば、検証部25aが、CSRに含まれている、申請者に対する証明書の初回発行時からの経過時間を導出するための情報の正否を検証し、検証に成功した場合に、発行部25bが、当該情報をサーバ証明書に記載して、更新サーバ証明書を発行する。 On the other hand, if the verification is successful, the issuing unit 25b issues a server certificate including information for deriving the time that has elapsed since the initial issuance of the certificate to the applicant. Specifically, for example, the verifying unit 25a verifies whether the information included in the CSR for deriving the time that has elapsed since the initial issuance of the certificate to the applicant is correct, and if the verification is successful, the issuing unit 25b writes the information in the server certificate and issues an updated server certificate.

 また、発行部25bは、発行した更新サーバ証明書をサーバ10に返送する。その場合に、サーバ10は、前述のとおり、返送された更新サーバ証明書を用いて現行のサーバ証明書14aを更新する。 The issuing unit 25b also returns the issued updated server certificate to the server 10. In this case, the server 10 updates the current server certificate 14a using the returned updated server certificate, as described above.

 ここで、過去の更新の前後で申請者が同一であることが保証されているため、図2に例示したように、当該申請者に対する証明書の初回発行時からの経過期間は、同一人物による継続した運用期間といいかえることができる。 Here, since it is guaranteed that the applicant is the same before and after the previous renewal, the period that has elapsed since the initial issuance of the certificate to the applicant can be said to be the period of continuous operation by the same person, as shown in the example in Figure 2.

 そこで、発行部25bは、サーバ証明書の所定の拡張領域に、申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含める。例えば、発行部25bは、RFC5280のX.509で定義される公開鍵証明書期間の拡張領域を利用して、申請者に対するサーバ証明書の初回発行時からの経過期間を導出するための情報をサーバ証明書に組み込む。 The issuing unit 25b therefore includes, in a predetermined extension field of the server certificate, information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant. For example, the issuing unit 25b incorporates, into the server certificate, information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant, using the extension field of the public key certificate period defined in X.509 of RFC5280.

 申請者に対するサーバ証明書の初回発行時からの経過期間を導出するための情報は、例えば、該サーバ証明書の申請者が同一である期間、または該申請者に対する初回の証明書の発行日時である。 Information for deriving the period of time that has elapsed since the first issuance of a server certificate to an applicant is, for example, the period of time that the applicant for the server certificate is the same, or the date and time of the first issuance of the certificate to the applicant.

 ここで、図4および図5は、発行部の処理を説明するための図である。例えば、発行部25bは、図4に例示するように、サーバ証明書の申請者が同一である期間を設定する。ここで、図4(a)および図5(a)において、type-idは説明のために文字列で表されているが、実際はASN.1に基づいたOIDである。 Here, Fig. 4 and Fig. 5 are diagrams for explaining the processing of the issuing unit. For example, the issuing unit 25b sets the period during which the applicant for the server certificate remains the same, as shown in Fig. 4. Here, in Fig. 4(a) and Fig. 5(a), the type-id is expressed as a character string for the purpose of explanation, but in reality it is an OID based on ASN.1.

 具体的には、発行部25bは、図4(a)に例示するように、RFC5280のX.509で定義される公開鍵証明書期間の主体者別名(Subject Alternative Name)における拡張領域「OtherName」に、「ApplicantPeriod」を定義する。このApplicantPeriod(同一申請者期間)とは、現在参照しているサーバ証明書が有効になった当初の時点で、当該サイトが同一の申請者すなわち同一の運用者によって継続して運用されている期間を意味する。 Specifically, as shown in the example of Figure 4 (a), the issuing unit 25b defines "ApplicantPeriod" in the extension field "OtherName" in the Subject Alternative Name of the public key certificate period defined in X.509 of RFC5280. This ApplicantPeriod (same applicant period) refers to the period during which the site has been continuously operated by the same applicant, i.e., the same operator, from the time when the currently referenced server certificate first became valid.

 例えば、図4(b)の領域βに下線を付して例示するように、サーバ証明書にApplicantPeriodが設定される。この場合には、後述するクライアント30の導出部35bにおいて、領域αに太字で記載されているValidityのNot Beforeの日時(2023年2月22日)と現在の日時(例えば、2023年3月5日とする)との差分により、このサーバ証明書が発行されてからの経過日数(10日)がわかる。また、領域βに記載されているApplicantPeriodにより、このサーバ証明書が有効化された時点で、同一の運用者によりサイトが継続して運用された日数(360日)がわかる。サーバ証明書が発行されてからの経過日数とサーバ証明書が有効化された時点で、同一の運用者によりサイトが継続して運用された日数とを加算することにより、同一の申請者に対するサーバ証明書の初回発行時からの経過期間、すなわち同一の運用者による当該サイトの継続した運用日数(370日)が導出される。 For example, as shown by the underlined area β in FIG. 4B, the ApplicantPeriod is set in the server certificate. In this case, in the derivation unit 35b of the client 30 described later, the number of days (10 days) that have passed since the server certificate was issued can be determined from the difference between the Not Before date and time (February 22, 2023) of Validity written in bold in area α and the current date and time (for example, March 5, 2023). In addition, the number of days (360 days) that the site has been continuously operated by the same operator at the time the server certificate was validated can be determined from the ApplicantPeriod written in area β. By adding the number of days that have passed since the server certificate was issued and the number of days that the site has been continuously operated by the same operator at the time the server certificate was validated, the period that has passed since the server certificate was first issued to the same applicant, that is, the number of days that the site has been continuously operated by the same operator (370 days), is derived.

 なお、申請者による初回のCSRには、旧秘密鍵が存在せず、署名が含まれていない。その場合のApplicantPeriod=0である。 Note that the applicant's first CSR does not contain an old private key and does not include a signature. In this case, ApplicantPeriod = 0.

 あるいは、発行部25bは、図5に例示するように、同一の申請者に対する初回のサーバ証明書の発行日時を設定する。具体的には、発行部25bは、図5(a)に例示するように、RFC5280のX.509で定義される公開鍵証明書期間の主体者別名(Subject Alternative Name)における拡張領域「OtherName」に、「Applicant Not Before」を定義する。このApplicant Not Before(申請者の初回証明書発行日時)とは、サイトが同一の申請者すなわち同一の運用者によって継続して運用され始めた最初の日を示す。 Alternatively, the issuing unit 25b sets the issuance date and time of the first server certificate for the same applicant, as exemplified in FIG. 5. Specifically, the issuing unit 25b defines "Applicant Not Before" in the "OtherName" extension field in the Subject Alternative Name of the public key certificate period defined in X.509 of RFC5280, as exemplified in FIG. 5(a). This Applicant Not Before (the applicant's initial certificate issuance date and time) indicates the first day that the site began to be continuously operated by the same applicant, i.e., the same operator.

 例えば、図5(b)の領域γに下線を付して例示するように、サーバ保証書にApplicant Not Beforeが設定される。この場合には、後述するクライアント30の導出部35bにおいて、領域γに記載されているApplicant Not Beforeの日時(2023年2月17日)と現在の日時(例えば、2023年3月5日とする)との差分により、このサーバ証明書が発行されてからの経過日数(370日)、すなわち同一の運用者による当該サイトの継続した運用日数が導出される。 For example, as shown by the underlined area γ in FIG. 5(b), Applicant Not Before is set in the server warranty. In this case, the derivation unit 35b of the client 30, which will be described later, derives the number of days that have passed since the server certificate was issued (370 days), i.e., the number of days that the site has been continuously operated by the same operator, from the difference between the date and time of Applicant Not Before written in area γ (February 17, 2023) and the current date and time (for example, March 5, 2023).

 なお、申請者による初回のCSRには、旧秘密鍵が存在せず、署名が含まれていない。その場合のApplicant Not Beforeは、サーバ証明書の発行日時であるNot Beforeと同一である。 Note that the applicant's first CSR does not contain the old private key and does not include a signature. In this case, the Applicant Not Before is the same as the Not Before date and time of the server certificate issue.

[クライアントの構成]
 クライアント30は、CPUやNPやFPGA等で実現され、メモリに記憶された処理プログラムを実行する制御部35を備える。また、クライアント30は、RAM、フラッシュメモリ等の半導体メモリ素子で実現される記憶部34を備える。また、クライアント30は、図示しない通信制御部を備え、通信制御部を介してサーバ10や他のネットワーク装置等と通信する。また、クライアント30は、液晶ディスプレイなどの表示装置やスピーカ等によって実現される不図示の出力部を備える。
[Client Configuration]
The client 30 includes a control unit 35 implemented by a CPU, NP, FPGA, or the like, and executing a processing program stored in memory. The client 30 also includes a storage unit 34 implemented by a semiconductor memory element such as a RAM, flash memory, or the like. The client 30 also includes a communication control unit (not shown), and communicates with the server 10, other network devices, or the like via the communication control unit. The client 30 also includes an output unit (not shown) implemented by a display device such as a liquid crystal display, a speaker, or the like.

 このクライアント30は、サーバ10で運用されるサイトに対し、ユーザによるブラウザ経由のアクセス、あるいはスクリプトによる機械的なアクセスを行う。なお、すべての正規サイトは、HTTPSに対応しているものとする。 This client 30 accesses sites operated by the server 10 either via a user's browser or mechanically via a script. Note that all legitimate sites are assumed to be HTTPS-compatible.

 制御部35は、図3に示したように、取得部35a、導出部35b、および判定部35cとして機能する。まず、取得部35aは、発行されたサーバ証明書14aを取得する。具体的には、制御部35は、サーバ10で運用されるサイトに対し、ユーザによるブラウザ経由のアクセス、あるいはスクリプトによる機械的なアクセスを行う。その際に、取得部35aが、サーバ10への接続要求を行って、サーバ証明書14aを取得する。また、取得部35aは、取得されたサーバ証明書14aを参照し、申請者に対する証明書の初回発行時からの経過期間を導出するための情報を確認する。 As shown in FIG. 3, the control unit 35 functions as an acquisition unit 35a, a derivation unit 35b, and a determination unit 35c. First, the acquisition unit 35a acquires the issued server certificate 14a. Specifically, the control unit 35 accesses a site operated by the server 10 by a user via a browser, or mechanically by a script. At that time, the acquisition unit 35a makes a connection request to the server 10 and acquires the server certificate 14a. The acquisition unit 35a also refers to the acquired server certificate 14a and checks information for deriving the period of time that has elapsed since the certificate was first issued to the applicant.

 導出部35bは、申請者に対するサーバ証明書14aの初回発行時からの経過期間を導出するための情報を用いて、同一の該申請者によるドメインの運用期間を導出する。具体的には、導出部35bは、図4(b)または図5(b)に例示したように、同一の該申請者によるドメインの運用期間を導出する。 The derivation unit 35b uses information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant to derive the operation period of the domain by the same applicant. Specifically, the derivation unit 35b derives the operation period of the domain by the same applicant as shown in FIG. 4(b) or FIG. 5(b).

 判定部35cは、導出された運用期間を用いて、運用者が変更された可能性、あるいはドロップキャッチの可能性の有無を判定する。 The determination unit 35c uses the derived operation period to determine whether the operator may have been changed or whether a drop catch may have occurred.

 例えば、判定部35cは、前回のサーバ10へのアクセスから今回のサーバ10へのアクセスまでの期間が、導出された運用期間以上である場合に、前回のアクセス時から運用者が変更された可能性があると判定する。つまり、判定部35cは、同一の運用者による継続した運用期間中は信用できる一方、それを超える期間の途中には運用者が変更された可能性があること、あるいは、ドロップキャッチが発生した可能性があるものと判定する。 For example, if the period between the previous access to server 10 and the current access to server 10 is equal to or longer than the derived operation period, determination unit 35c determines that the operator may have changed since the previous access. In other words, while the period of continuous operation by the same operator is trustworthy, determination unit 35c determines that the operator may have changed during a period that exceeds this period, or that a drop catch may have occurred.

 判定部35cは、ドロップキャッチが発生したと判定した場合には、判定部35cは、例えば、機械的なスクリプトアクセスを停止したり、アクセスしようとするユーザに対して「ドロップキャッチが発生した可能性がある」旨の警告メッセージを提示したりする。 If the determination unit 35c determines that a drop catch has occurred, the determination unit 35c may, for example, stop mechanical script access or present a warning message to the user attempting access, stating that "a drop catch may have occurred."

 あるいは、判定部35cは、導出された運用期間が所定の期間以下である場合に、運用者が変更された可能性があると判定する。つまり、判定部35cは、同一の運用者による継続した運用期間が、ドロップキャッチが悪用され被害が発生し得ると社内ポリシー等に応じて規定された所定の期間以下の短い期間である場合に、運用者が変化している可能性があること、すなわちドロップキャッチが発生した可能性があるものと判定する。 Alternatively, the determination unit 35c determines that the operator may have changed if the derived operation period is equal to or shorter than a predetermined period. In other words, the determination unit 35c determines that the operator may have changed, that is, that a drop catch may have occurred, if the continuous operation period by the same operator is a short period equal to or shorter than a predetermined period stipulated according to an internal company policy, etc., in which drop catch may be misused and cause damage.

 判定部35cは、ドロップキャッチが発生したと判定した場合には、例えば、アクセスしようとするユーザに対して「ドロップキャッチが発生した可能性がある」旨の警告メッセージを提示する。例えば、昔から運用されていると想定されるサイトについては、所定の期間として長期間が規定される。この期間より導出された運用期間が短ければ、ユーザに注意を促すことが可能となる。 When the determination unit 35c determines that a drop catch has occurred, it presents a warning message to the user attempting to access the site, stating that "a drop catch may have occurred." For example, for a site that is assumed to have been in operation for a long time, a long period of time is set as the predetermined period. If the operation period derived from this period is short, it is possible to alert the user.

[推定処理]
 次に、図6および図7を参照して、本実施形態に係る推定システム1による推定処理について説明する。まず、図6は、推定処理手順を示すシーケンス図である。図6には、サーバ10とCA20とにおける処理手順が例示されている。図6のシーケンスは、例えば、推定処理の開始を指示する操作入力があったタイミングで開始される。
[Estimation process]
Next, the estimation process by the estimation system 1 according to the present embodiment will be described with reference to Fig. 6 and Fig. 7. First, Fig. 6 is a sequence diagram showing the estimation process procedure. Fig. 6 illustrates the processing procedure in the server 10 and the CA 20. The sequence in Fig. 6 is started, for example, at the timing when an operation input is made to instruct the start of the estimation process.

 まず、サーバ10において、生成部15aが、サーバ証明書の更新時に、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する(ステップS1)。具体的には、生成部15aは、更新の申請を行うサーバ証明書用の新公開鍵と、これに対応する新秘密鍵とのペアを生成する。 First, in the server 10, the generation unit 15a generates a new public key and a new private key for the applicant who operates the domain when updating the server certificate (step S1). Specifically, the generation unit 15a generates a pair of a new public key for the server certificate for which an update is being requested, and a new private key corresponding to the new public key.

 次に、申請部15bが、これまでに運用していたサーバ証明書14aに対応する旧秘密鍵により新公開鍵を暗号化して署名を行う(ステップS2)。 Next, the application unit 15b encrypts and signs the new public key using the old private key corresponding to the server certificate 14a that has been in use until now (step S2).

 また、申請部15bは、サーバ証明書の更新を請求するCSRを作成する。その際に、申請部15bは、後述する、当該申請者に対するサーバ証明書14aの初回発行時からの経過期間を導出するための所定の情報の値をCSRに含める(ステップS3)。 The application unit 15b also creates a CSR requesting renewal of the server certificate. At that time, the application unit 15b includes in the CSR the value of predetermined information for deriving the period of time that has elapsed since the initial issuance of the server certificate 14a to the applicant, as described below (step S3).

 例えば、所定の値として、Applicant Period、またはApplicant Not Beforeの値をCSRに含める。 For example, the CSR may include the Applicant Period or Applicant Not Before values as specified values.

 なお、Applicant Periodの値をCSRに含める場合には、現在のサーバ証明書14aが有効になってからの経過日数を確認し、この日数を現在のサーバ証明書14aのApplicant Periodの値に加算して得る。 When the Applicant Period value is included in the CSR, the number of days that have passed since the current server certificate 14a became valid is confirmed, and this number of days is added to the Applicant Period value of the current server certificate 14a.

 または、Applicant Not Beforeの値をCSRに含める場合には、現在のサーバ証明書14aのApplicant Not Beforeの値をそのまま用いる。 Alternatively, if the Applicant Not Before value is to be included in the CSR, the Applicant Not Before value of the current server certificate 14a is used as is.

 そして、申請部15bは、CSRと署名とをCA20に送信する(ステップS4)。 Then, the application unit 15b transmits the CSR and the signature to the CA 20 (step S4).

 CA20では、検証部25aが、申請された署名を旧公開鍵により復号して申請者の検証を行う。具体的には、検証部25aは、これまでのサーバ証明書のログであるCTLogを参照し、当該申請者の現行のサーバ証明書14aに対応する旧公開鍵を取得する。そして、検証部25aは、CSRの署名が旧公開鍵で復号できるか否かを検証する(ステップS5)。 In CA 20, verification unit 25a decrypts the applied signature with the old public key to verify the applicant. Specifically, verification unit 25a refers to the CTLog, which is a log of previous server certificates, and obtains the old public key that corresponds to the applicant's current server certificate 14a. Verification unit 25a then verifies whether the CSR signature can be decrypted with the old public key (step S5).

 また、検証部25aが、CSRに含まれている、申請者に対する証明書の初回発行時からの経過時間を導出するための情報の正否を検証する(ステップS6)。例えば、検証部25aは、CTLogの情報を参照して、CSRに含まれるApplicant Period、またはApplicant Not Beforeの値が正しいか否かを検証する。 The verification unit 25a also verifies whether the information included in the CSR for deriving the elapsed time since the initial issuance of the certificate to the applicant is correct (step S6). For example, the verification unit 25a refers to the information in the CTLog to verify whether the values of Applicant Period or Applicant Not Before included in the CSR are correct.

 これらの検証が成功した場合に、発行部25bが、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報をサーバ証明書に記載して、更新サーバ証明書を発行する。また、発行部25bは、発行した更新サーバ証明書をサーバ10に返送する(ステップS7)。 If these verifications are successful, the issuing unit 25b issues an updated server certificate by including in the server certificate information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant. The issuing unit 25b also returns the issued updated server certificate to the server 10 (step S7).

 サーバ10では、申請部15bが、返送された更新サーバ証明書を用いて現行のサーバ証明書14aを更新する。これにより、一連の処理が終了する。 In the server 10, the application unit 15b updates the current server certificate 14a using the returned updated server certificate. This completes the process.

 次に、図7にはクライアント30における処理手順が例示されている。図7のフローチャートは、例えば、反映処理の開始を指示する操作入力があったタイミングで開始される。 Next, FIG. 7 shows an example of the processing procedure in the client 30. The flowchart in FIG. 7 starts, for example, when an operational input is made to instruct the start of the reflection process.

 まず、クライアント30では、サーバ10で運用されるサイトに対し、ユーザによるブラウザ経由のアクセス、あるいはスクリプトによる機械的なアクセスを行う際に、取得部35aが、サーバ10への接続要求を行って、サーバ証明書14aを取得する。また、取得部35aは、取得されたサーバ証明書14aを参照し、申請者に対する証明書の初回発行時からの経過期間を導出するための情報を取得する(ステップS11)。 First, in the client 30, when a user accesses a site operated by the server 10 via a browser or mechanically accesses the site via a script, the acquisition unit 35a makes a connection request to the server 10 and acquires the server certificate 14a. The acquisition unit 35a also references the acquired server certificate 14a and acquires information for deriving the period of time that has elapsed since the certificate was first issued to the applicant (step S11).

 例えば、取得部35aは、申請者に対する証明書の初回発行時からの経過期間を導出するための情報として、サーバ証明書14aに記載されているApplicant Period、またはApplicant Not Beforeを取得する。 For example, the acquisition unit 35a acquires the Applicant Period or Applicant Not Before recorded in the server certificate 14a as information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant.

 次に、導出部35bが、所定の情報を用いて、同一の申請者に対するサーバ証明書14aの初回発行時からの経過期間を導出する(ステップS12)。ここで導出された経過期間は、同一の該申請者による現在までのドメインの運用期間に相当する。 Next, the derivation unit 35b uses the specified information to derive the period of time that has elapsed since the initial issuance of the server certificate 14a to the same applicant (step S12). The period of time that has elapsed corresponds to the period of time that the domain has been in operation by the same applicant up to the present.

 例えば、所定の情報として、Applicant Periodを取得した場合には、Applicant Period=0であれば、導出部35bは、現行のサーバ証明書14aの発行後日数を運用期間として得る。一方、Applicant Period=0でなければ、導出部35bは、Applicant Periodの期間と現行のサーバ証明書14aの発行後日数とを加算して運用期間を得る。 For example, when the Applicant Period is acquired as the specified information, if the Applicant Period = 0, the derivation unit 35b obtains the number of days since the issuance of the current server certificate 14a as the operation period. On the other hand, if the Applicant Period is not 0, the derivation unit 35b obtains the operation period by adding the Applicant Period and the number of days since the issuance of the current server certificate 14a.

 または、所定の情報として、Applicant Not Beforeを取得した場合には、導出部35bは、Applicant Not Beforeの日時から現在までの経過日数を運用期間として得る。 Alternatively, if Applicant Not Before is acquired as the specified information, the derivation unit 35b obtains the number of days that have elapsed from the date and time of Applicant Not Before to the present as the operation period.

 そして、判定部35cは、導出された運用期間を用いて、運用者が変更された可能性、あるいはドロップキャッチの可能性の有無を判定する。例えば、判定部35cは、導出された運用期間と、ドロップキャッチが悪用され被害が発生し得ると社内ポリシー等に応じて規定された所定の期間とを比較する(ステップS13)。 Then, the determination unit 35c uses the derived operation period to determine whether or not there is a possibility that the operator has been changed or that a drop catch has occurred. For example, the determination unit 35c compares the derived operation period with a predetermined period stipulated according to an internal company policy, etc., during which a drop catch may be misused and damage may occur (step S13).

 導出された運用期間が、所定の期間を超えている場合には(ステップS13、Yes)、運用期間は信用できるものとして、判定部35cは、運用者の変更の可能性がない、あるいはドロップキャッチの可能性はないと判定する(ステップS14)。この場合には、クライアント30は、ユーザによるアクセスを許容する。一連の処理が完了する。 If the derived operation period exceeds a predetermined period (step S13, Yes), the operation period is deemed reliable, and the determination unit 35c determines that there is no possibility of a change in the operator or of a drop catch (step S14). In this case, the client 30 allows access by the user. A series of processes is completed.

 一方、導出された運用期間が、所定の期間以下である場合には(ステップS13、No)、判定部35cは、運用者が変更された可能性があると判定する。そして、判定部35cは、ユーザに対して「ドロップキャッチが発生した可能性がある」旨の警告メッセージを表示する(ステップS15)。これにより、一連の処理が完了する。 On the other hand, if the derived operation period is equal to or shorter than the predetermined period (step S13, No), the determination unit 35c determines that the operator may have changed. Then, the determination unit 35c displays a warning message to the user stating that "a drop catch may have occurred" (step S15). This completes the series of processes.

[効果]
 以上、説明したように、推定システム1では、サーバ10において、生成部15aが、サーバ証明書の更新に際し、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する。申請部15bが、更新前の旧秘密鍵による、生成された新公開鍵の署名を用いて、CA20にサーバ証明書14aの更新を申請する。CA20において、検証部25aが、申請された署名を旧公開鍵により復号して申請者の検証を行う。発行部25bが、検証が成功した場合に、該申請者に対するサーバ証明書の初回発行時からの経過期間を導出するための情報を含むサーバ証明書を発行する。
[effect]
As described above, in the estimation system 1, in the server 10, the generation unit 15a generates a new public key and a new private key for an applicant who operates a domain when updating a server certificate. The application unit 15b applies to the CA 20 for updating the server certificate 14a using a signature of the new public key generated by the old private key before the update. In the CA 20, the verification unit 25a decrypts the applied signature by the old public key to verify the applicant. If the verification is successful, the issuance unit 25b issues a server certificate including information for deriving the period of time that has elapsed since the initial issuance of the server certificate to the applicant.

 具体的には、申請者に対する証明書の初回発行時からの経過期間を導出するための情報は、該証明書の申請者が同一である期間、または該申請者に対する初回の証明書の発行日時である。 Specifically, the information used to derive the period of time that has elapsed since the first issuance of a certificate to an applicant is the period during which the applicant for the certificate remains the same, or the date and time of the first issuance of the certificate to the applicant.

 ここで、過去の更新の前後で申請者が同一であることが保証されているため、導出されたサーバ証明書の初回発行からの経過期間は、同一の運用者による継続した運用期間といいかえることができる。したがって、ドメインにアクセスしようとするユーザは、サーバ保証書を参照して、容易に当該ドメインの同一の運用者による継続した運用期間を知ることが可能となる。これにより、ユーザはドロップキャッチ事象を推定することが容易に可能となる。 Here, since it is guaranteed that the applicant is the same before and after past renewals, the period that has elapsed since the initial issuance of the derived server certificate can be said to be the period of continuous operation by the same operator. Therefore, a user attempting to access a domain can refer to the server certificate and easily find out the period of continuous operation of the domain by the same operator. This makes it easy for users to infer a drop-catch event.

 また、発行部25bは、証明書の所定の拡張領域に、申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含める。このように標準仕様の範囲内で実装することにより、本発明の対象外のネットワーク装置に対して影響を与えることなく実施可能となる。 The issuing unit 25b also includes information in a specified extension area of the certificate for deriving the period of time that has elapsed since the certificate was first issued to the applicant. By implementing this within the scope of the standard specifications, it is possible to implement the present invention without affecting network devices that are not covered by the present invention.

 また、クライアント30において、取得部35aが、発行されたサーバ証明書14aを取得する。導出部35bが、申請者に対する証明書の初回発行時からの経過期間を導出するための情報を用いて、該同一の申請者による前記ドメインの運用期間を導出する。判定部35cが、導出された運用期間を用いて、運用者が変更された可能性の有無を判定する。 In addition, in the client 30, the acquisition unit 35a acquires the issued server certificate 14a. The derivation unit 35b uses information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant to derive the operation period of the domain by the same applicant. The determination unit 35c uses the derived operation period to determine whether or not the operator may have changed.

 具体的には、判定部35cは、前回のサーバ10へのアクセスから今回のサーバ10へのアクセスまでの期間が、導出された運用期間以上である場合に、運用者が変更された可能性があると判定する。 Specifically, the determination unit 35c determines that the operator may have changed if the period between the previous access to the server 10 and the current access to the server 10 is equal to or longer than the derived operation period.

 または、判定部35cは、導出された運用期間が所定の期間以下である場合に、運用者が変更された可能性があると判定する。 Alternatively, if the derived operation period is less than or equal to a predetermined period, the determination unit 35c determines that the operator may have been changed.

 これにより、悪意のドロップキャッチの期間に明確な定義がなくても、サーバにアクセスするユーザやスクリプトが、容易にドロップキャッチの可能性を検知して対応することが可能となる。 This means that even if there is no clear definition of the period during which a malicious drop catch occurs, users and scripts accessing the server can easily detect the possibility of a drop catch and respond accordingly.

[プログラム]
 上記実施形態に係る推定システム1の各装置(サーバ10、CA20、クライアント30)が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、サーバ10は、パッケージソフトウェアやオンラインソフトウェアとして上記の推定処理を実行する推定プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の推定プログラムを情報処理装置に実行させることにより、情報処理装置をサーバ10として機能させることができる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。また、サーバ10の機能を、クラウドサーバに実装してもよい。
[program]
A program in which the processes executed by each device (server 10, CA 20, client 30) of the estimation system 1 according to the embodiment are written in a language executable by a computer can also be created. As an embodiment, the server 10 can be implemented by installing an estimation program that executes the above estimation process as package software or online software on a desired computer. For example, the information processing device can function as the server 10 by executing the above estimation program on the information processing device. In addition, the information processing device also includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone System), as well as slate terminals such as PDA (Personal Digital Assistant). The functions of the server 10 may be implemented on a cloud server.

 図8は、推定プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。 FIG. 8 is a diagram showing an example of a computer that executes an estimation program. The computer 1000 has, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.

 メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1051およびキーボード1052が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1061が接続される。 The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012. The ROM 1011 stores a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to a hard disk drive 1031. The disk drive interface 1040 is connected to a disk drive 1041. A removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1041. The serial port interface 1050 is connected to a mouse 1051 and a keyboard 1052, for example. The video adapter 1060 is connected to a display 1061, for example.

 ここで、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ1031やメモリ1010に記憶される。 Here, the hard disk drive 1031 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. Each piece of information described in the above embodiment is stored, for example, in the hard disk drive 1031 or memory 1010.

 また、推定プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、ハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明したサーバ10が実行する各処理が記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。 The estimation program is stored in the hard disk drive 1031, for example, as a program module 1093 in which instructions to be executed by the computer 1000 are written. Specifically, the program module 1093 in which each process executed by the server 10 described in the above embodiment is written is stored in the hard disk drive 1031.

 また、推定プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えば、ハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。 In addition, data used for information processing by the estimation program is stored as program data 1094, for example, in the hard disk drive 1031. Then, the CPU 1020 reads the program module 1093 and program data 1094 stored in the hard disk drive 1031 into the RAM 1012 as necessary, and executes each of the above-mentioned procedures.

 なお、推定プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、推定プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。 The program module 1093 and program data 1094 related to the estimation program are not limited to being stored in the hard disk drive 1031, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1041 or the like. Alternatively, the program module 1093 and program data 1094 related to the estimation program may be stored in another computer connected via a network such as a LAN (Local Area Network) or a WAN (Wide Area Network), and read by the CPU 1020 via the network interface 1070.

 以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。 The above describes an embodiment of the invention made by the inventor, but the present invention is not limited to the descriptions and drawings that form part of the disclosure of the present invention according to this embodiment. In other words, other embodiments, examples, operational techniques, etc. made by those skilled in the art based on this embodiment are all included in the scope of the present invention.

 1 推定システム
 10 サーバ
 11 入力部
 12 出力部
 13 通信制御部
 14,24,34 記憶部
 14a サーバ証明書
 15,25,35 制御部
 15a 生成部
 15b 申請部
 20 CA(認証局)
 25a 検証部
 25b 発行部
 30 クライアント
 35a 取得部
 35b 導出部
 35c 判定部
REFERENCE SIGNS LIST 1 Estimation system 10 Server 11 Input unit 12 Output unit 13 Communication control unit 14, 24, 34 Storage unit 14a Server certificate 15, 25, 35 Control unit 15a Generation unit 15b Application unit 20 CA (Certification Authority)
25a Verification unit 25b Issue unit 30 Client 35a Acquisition unit 35b Derivation unit 35c Determination unit

Claims (8)

 証明書の更新に際し、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する生成部と、
 更新前の旧秘密鍵による、生成された前記新公開鍵の署名を用いて、認証局に証明書の更新を申請する申請部と、
 申請された前記署名を旧公開鍵により復号して前記申請者の検証を行う検証部と、
 前記検証が成功した場合に、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含む証明書を発行する発行部と、
 を有することを特徴とする推定システム。
a generating unit for generating a new public key and a new private key for an applicant who operates a domain when updating the certificate;
an application unit that applies for certificate renewal to a certification authority by using a signature of the new public key generated by the old private key before renewal;
a verification unit that decrypts the applied signature using an old public key to verify the applicant;
an issuing unit that issues a certificate containing information for deriving an elapsed time since the first issuance of the certificate to the applicant if the verification is successful;
An estimation system comprising:
 前記発行部は、前記証明書の所定の拡張領域に、前記申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含めることを特徴とする請求項1に記載の推定システム。 The estimation system according to claim 1, characterized in that the issuing unit includes information for deriving the period of time that has elapsed since the initial issuance of the certificate to the applicant in a predetermined extension area of the certificate.  前記申請者に対する証明書の初回発行時からの経過期間を導出するための情報は、該証明書の申請者が同一である期間、または該申請者に対する初回の証明書の発行日時であることを特徴とする請求項1に記載の推定システム。 The estimation system according to claim 1, characterized in that the information for deriving the period of time that has elapsed since the first issuance of the certificate to the applicant is the period during which the applicant for the certificate remains the same, or the date and time of the first issuance of the certificate to the applicant.  発行された前記証明書を取得する取得部と、
 前記申請者に対する証明書の初回発行時からの経過期間を導出するための情報を用いて、同一の申請者による前記ドメインの運用期間を導出する導出部と、
 導出された前記運用期間を用いて、運用者が変更された可能性の有無を判定する判定部と、
 をさらに有することを特徴とする請求項1に記載の推定システム。
an acquisition unit for acquiring the issued certificate;
a derivation unit that derives an operation period of the domain by the same applicant using information for deriving an elapsed period since the initial issuance of a certificate to the applicant;
A determination unit that determines whether or not the manager may have been changed using the derived operation period;
The estimation system of claim 1 further comprising:
 前記判定部は、前回のサーバへのアクセスから今回のサーバへのアクセスまでの期間が、前記運用期間以上である場合に、前記運用者が変更された可能性があると判定することを特徴とする請求項4に記載の推定システム。 The estimation system according to claim 4, characterized in that the determination unit determines that the operator may have changed if the period between the previous access to the server and the current access to the server is equal to or longer than the operation period.  前記判定部は、前記運用期間が所定の期間以下である場合に、前記運用者が変更された可能性があると判定することを特徴とする請求項4に記載の推定システム。 The estimation system according to claim 4, characterized in that the determination unit determines that the operator may have been changed if the operation period is equal to or shorter than a predetermined period.  推定システムが実行する推定方法であって、
 証明書の更新に際し、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する生成工程と、
 更新前の旧秘密鍵による、生成された前記新公開鍵の署名を用いて、認証局に証明書の更新を申請する申請工程と、
 申請された前記署名を旧公開鍵により復号して前記申請者の検証を行う検証工程と、
 前記検証が成功した場合に、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含む証明書を発行する発行工程と、
 を含んだことを特徴とする推定方法。
An estimation method executed by an estimation system, comprising:
generating a new public key and a new private key for an applicant who operates a domain when renewing a certificate;
an application process for applying for certificate renewal to a certificate authority using a signature of the new public key generated by the old private key before renewal;
a verification step of decrypting the applied signature with an old public key to verify the applicant;
if said verification is successful, issuing a certificate including information for deriving the period of time since the first issuance of the certificate to said applicant;
The estimation method according to claim 1, further comprising:
 証明書の更新に際し、ドメインを運用する申請者の新公開鍵と新秘密鍵とを生成する生成ステップと、
 更新前の旧秘密鍵による、生成された前記新公開鍵の署名を用いて、認証局に証明書の更新を申請する申請ステップと、
 申請された前記署名を旧公開鍵により復号して前記申請者の検証を行う検証ステップと、
 前記検証が成功した場合に、該申請者に対する証明書の初回発行時からの経過期間を導出するための情報を含む証明書を発行する発行ステップと、
 をコンピュータに実行させるための推定プログラム。
generating a new public key and a new private key for an applicant who operates a domain when renewing the certificate;
an application step of applying for certificate renewal to a certificate authority using a signature of the new public key generated by the old private key before renewal;
a verification step of decrypting the applied signature with an old public key to verify the applicant;
if said verification is successful, issuing a certificate including information for deriving the period of time since the first issuance of the certificate to said applicant;
An estimation program for causing a computer to execute the above.
PCT/JP2023/021776 2023-06-12 2023-06-12 Estimation system, estimation method, and estimation program Pending WO2024257180A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/021776 WO2024257180A1 (en) 2023-06-12 2023-06-12 Estimation system, estimation method, and estimation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/021776 WO2024257180A1 (en) 2023-06-12 2023-06-12 Estimation system, estimation method, and estimation program

Publications (1)

Publication Number Publication Date
WO2024257180A1 true WO2024257180A1 (en) 2024-12-19

Family

ID=93851475

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/021776 Pending WO2024257180A1 (en) 2023-06-12 2023-06-12 Estimation system, estimation method, and estimation program

Country Status (1)

Country Link
WO (1) WO2024257180A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050081027A1 (en) * 2003-08-15 2005-04-14 Imcentric, Inc. Renewal product for digital certificates
CN101651540A (en) * 2008-08-12 2010-02-17 中国移动通信集团公司 Method, device and system for updating digital certificate

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050081027A1 (en) * 2003-08-15 2005-04-14 Imcentric, Inc. Renewal product for digital certificates
CN101651540A (en) * 2008-08-12 2010-02-17 中国移动通信集团公司 Method, device and system for updating digital certificate

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MAROOFI, S. ET AL.: "COMAR: Classification of Compromised versus Maliciously Registered Domains.", 5TH IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY., September 2020 (2020-09-01), pages 607 - 623, XP033847044, DOI: 10.1109/EuroSP48549.2020.00045 *

Similar Documents

Publication Publication Date Title
CN111164948B (en) Managing network security vulnerabilities using blockchain networks
US6393420B1 (en) Securing Web server source documents and executables
JP5598828B2 (en) Software signing certificate reputation model
US9485254B2 (en) Method and system for authenticating a security device
US11626998B2 (en) Validated payload execution
US8250630B2 (en) Detecting unauthorized computer access
JP5193787B2 (en) Information processing method, relay server, and network system
US10470040B2 (en) Secure single sign-on to software applications
CN101753374A (en) Server-to-server integrity checking
WO2006003914A1 (en) Quarantine system
CN103944913A (en) Server-oriented safe firmware designing method
CN111737232A (en) Database management method, system, device, device and computer storage medium
WO2019178763A1 (en) Certificate importing method and terminal
CN113678131A (en) Secure online applications and web pages with blockchain
US11665198B2 (en) Managing third party URL distribution
CN119363444A (en) Device access authentication system, method, device and medium for power Internet of Things
US11728973B2 (en) System and method for secure access management
CN115544468A (en) User privacy authorization method, device and storage medium
WO2024257180A1 (en) Estimation system, estimation method, and estimation program
US20250028845A1 (en) Secret Replacement for Web Browsers
CN111737747A (en) Database security method, device, equipment and computer storage medium
CN114640505A (en) FTP user authentication method and system and construction method thereof
TWI773025B (en) Processes and method for safe of use, monitoring and management of device accounts in terminal manner
US20250200186A1 (en) Targeting operating system profiles for bare metal restore
CN114117460B (en) Data protection method, device, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23941489

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2025526927

Country of ref document: JP

Kind code of ref document: A