CN110619235A - 管理方法、管理装置及记录介质 - Google Patents

管理方法、管理装置及记录介质 Download PDF

Info

Publication number
CN110619235A
CN110619235A CN201910514732.5A CN201910514732A CN110619235A CN 110619235 A CN110619235 A CN 110619235A CN 201910514732 A CN201910514732 A CN 201910514732A CN 110619235 A CN110619235 A CN 110619235A
Authority
CN
China
Prior art keywords
version
management
software
transaction data
series
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
CN201910514732.5A
Other languages
English (en)
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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
Priority claimed from JP2019054577A external-priority patent/JP7316812B2/ja
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of CN110619235A publication Critical patent/CN110619235A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • G06Q30/0185Product, service or business identity fraud

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种软件的版本管理方法,抑制所管理的信息的篡改的发生。在管理方法中,多个管理装置中的第一管理装置从经由网络与第一管理装置连接的装置接收事物处理数据(S124),所述事物处理数据包含与软件的第一版本相关的第一信息、与研发者根据第一版本进行版本升级而得到的软件的第二版本相关的第二信息、研发者的识别信息和电子签名,所述第一管理装置使用所接收到的事物处理数据中包含的电子签名,验证事物处理数据的合法性(S114),在事物处理数据是合法的情况下,多个管理装置分别将事物处理数据存储在分散台账中(S115)。

Description

管理方法、管理装置及记录介质
技术领域
本发明涉及管理方法、管理装置及记录介质。
背景技术
在管理软件的管理系统中,将表示由上述研发者研发的软件的版本的版本信息,与研发者的识别信息一起进行管理(例如,参照专利文献1)。
专利文献1:日本特开2014-203352号公报
但是,在以往的管理系统中,存在难以防止在管理服务器中进行管理的信息的篡改的问题。
发明内容
因此,本发明提供一种管理方法等,在软件的版本管理方法中,抑制所管理的信息的篡改的发生。
有关本发明的一个方式的管理方法是由版本管理系统执行的软件的版本的管理方法,所述版本管理系统具备保有分散台账的多个管理装置,所述管理方法中,所述多个管理装置中的第一管理装置从经由网络与所述第一管理装置连接的装置接收事物处理数据,所述事物处理数据包括与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、和电子签名,所述第一管理装置使用所接收到的所述事物处理数据中包含的所述电子签名,验证所述事物处理数据的合法性,在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述分散台账中。
另外,这些概括性的或具体的方式也可由系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等记录介质实现,还可以通过系统、方法、集成电路、计算机程序及记录介质的任意组合来实现。
发明效果
根据本发明,提供一种管理方法,在软件的版本管理方法中,抑制所管理的信息的篡改的发生。
附图说明
图1是表示基于敏捷型研发的软件的版本系列的说明图。
图2是表示敏捷型研发中的令牌的授受的说明图。
图3是表示有关实施方式1的管理系统的结构的说明图。
图4是表示有关实施方式1的保管服务器的结构的框图。
图5是表示有关实施方式1的研发装置的结构的框图。
图6是表示有关实施方式1的管理装置的结构的框图。
图7是表示有关实施方式1的事物处理数据的第一例的框图。
图8是表示有关实施方式1的事物处理数据的第二例的框图。
图9是表示有关实施方式1的事物处理数据的第三例的框图。
图10是表示有关实施方式1的在区块链中存储的事物处理数据的示例的框图。
图11是表示有关实施方式1的管理系统的第一处理的程序图。
图12是表示有关实施方式1的管理系统的第二处理的程序图。
图13是表示有关实施方式2的版本系列的分支的说明图。
图14是表示有关实施方式2的管理系统的结构的说明图。
图15是表示有关实施方式2的控制装置的结构的框图。
图16是表示有关实施方式2的管理装置的结构的框图。
图17是表示有关实施方式2的在区块链中存储的事物处理数据的第一说明图。
图18是表示有关实施方式2的在区块链中存储的事物处理数据的第二说明图。
图19是表示有关实施方式2的管理系统的处理的程序图。
图20是表示有关实施方式2的事物处理数据的示例的说明图。
图21是表示有关实施方式2的与在共识算法中包含的版本系列相关的处理的流程图。
图22是表示有关实施方式3的版本系列的废止的说明图。
图23是表示有关实施方式3的控制装置的结构的框图。
图24是表示有关实施方式3的管理装置的结构的框图。
图25是表示有关实施方式3的事物处理数据的示例的说明图。
图26是表示有关实施方式3的在区块链中存储的事物处理数据的说明图。
图27是表示有关实施方式3的状态管理部管理的信息的说明图。
图28是表示有关实施方式3的管理系统的处理的程序图。
图29是表示区块链的数据构造的说明图。
图30是表示事物处理数据的数据构造的说明图。
标号说明
1、2 管理系统;
10A、10B、10C、10D、10E、10F、10G、10H、10I 管理装置;
11、21、31、71 通信部;
12 号码管理部;
13 事物处理验证部;
14 台账管理部;
15、15A 区块链;
16 令牌管理部;
17 分支部;
18 废止部;
19 状态管理部;
20A、20B、20C 研发装置;
22 研发部;
23、73 事物处理生成部;
24、34 存储装置;
30 保管服务器;
32 保管部;
33 发行部;
40、40A、50、60、80、91、92 事物处理数据;
41、51、61 研发者ID;
42、52、62 URL;
43A、81 新版本号;
44 基础版本号;
45、53 新版本的哈希值;
46、55、65、83 签名;
54、64 基础版本的哈希值;
63 差分的哈希值;
70、70A 控制装置;
72 分支指示部;
82 废止信息;
B1、B2、B3 区块;
N 网络;
T1 状态表;
P1 事物处理本体;
P2 电子签名。
具体实施方式
(本发明的基础认识)
本发明人发现在“背景技术”部分中记载的软件的研发中产生以下问题。
在进行软件研发时,采用不仅有研发商等、而且还有不确定的大量研发者参加的方式即敏捷型研发。在该方式中,多个研发者改进软件,由此可以产生各种各样的版本系列。
在管理软件的管理系统中,将表示由上述研发者研发的软件的版本的版本信息,与研发者的识别信息一起进行管理(例如,参照专利文献1)。
其中,版本信息具有用于唯一地确定该软件的版本的作用。并且,研发者的识别信息可以用来对研发者提供与软件的新版本的研发相关的报酬。
但是,在以往的管理系统中,存在难以防止在管理服务器中进行管理的程序的版本信息或者研发者的识别信息的篡改的问题。
因此,本发明提供一种抑制所管理的信息的篡改的发生的管理方法等。
有关本发明的一个方式的管理方法是由版本管理系统执行的软件的版本的管理方法,所述版本管理系统具备保有分散台账的多个管理装置,所述管理方法中,所述多个管理装置中的第一管理装置从具有网络与所述第一管理装置连接的装置接收事物处理数据,所述事物处理数据包括与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、和电子签名,所述第一管理装置使用所接收到的所述事物处理数据中包含的所述电子签名,验证所述事物处理数据的合法性,在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述分散台账中。
根据上述方式,与进行软件的版本升级的研发者相关的信息通过分散台账进行管理。分散台账具有所保有的信息难以篡改,并且不易受到系统死机的影响的优点。因此,根据上述管理方法,能够抑制所管理的信息的篡改的发生。
例如,也可以是,所述第二信息包含所述第二版本的版本号,所述管理方法中,进一步,在接收所述事物处理数据之前从所述装置接收到所述第二版本的版本号的发行委托的情况下,将新版本号作为所述第二版本的版本号发送给所述装置,在接收所述事物处理数据时,接收包含发送给所述装置的所述新版本号作为所述第二信息的所述事物处理数据。
根据上述方式,发行新版本的版本号,并与该发行的版本号建立关联而管理与新版本的研发者相关的信息。如果通过与该版本管理系统不同的装置等赋予版本号,则有可能产生版本号的重复等问题。根据有关本发明的管理方法,能够避免版本号的问题,抑制所管理的信息的篡改的发生。
例如,也可以是,所述第一信息包含所述软件的所述第一版本的版本号,所述第二信息包含所述软件的所述第二版本的哈希值和所述第二版本的版本号。
根据上述方式,使用第一版本的版本号、第二版本的哈希值和第二版本的版本号,能够更容易抑制所管理的信息的篡改的发生。
例如,也可以是,所述第一信息包含所述软件的所述第一版本的哈希值,所述第二信息包含所述软件的所述第二版本的哈希值。
根据上述方式,使用第一版本的哈希值和第二版本的哈希值,能够更容易抑制所管理的信息的篡改的发生。
例如,也可以是,所述第一信息包含所述软件的所述第一版本的哈希值,所述第二信息包含所述软件的所述第一版本与所述第二版本的差分的哈希值。
根据上述方式,使用第一版本的哈希值、和第一版本与第二版本的差分的哈希值,能够更容易抑制所管理的信息的篡改的发生。
例如,也可以是,所述装置保有表示存储有所述软件的所述第二版本的位置的位置信息,所述管理方法在接收所述事物处理数据时,接收包含所述位置信息的所述事物处理数据。
根据上述方式,表示第二版本的软件的存储位置的信息,与有关研发者的信息一起被存储在分散台账中。因此,能够抑制存储有第二版本的位置信息的篡改的发生,并抑制所管理的信息的篡改的发生。
例如,也可以是,所述管理方法中,在从所述软件的第一版本系列分支出第二版本系列时,生成新的分散台账,所述新的分散台账具有至少包含所述第一版本系列中的最后版本的一个以上的版本作为所述第二版本系列的一个以上的版本,所述多个管理装置保有所述新的分散台账。
根据上述方式,管理与多个版本系列分别对应的分散台账,在分支版本系列时,生成与新的系列对应的分散台账。若在一个系列中进行大量版本升级,则在取得版本升级的历史等信息时,可以得到与大量版本升级分别对应的信息,有可能处理负荷提高。在这种情况下,通过对版本系列进行分支,并在新的分散台账中管理新的版本系列,能够减少版本升级的历史等信息,防止上述的处理负荷的上升。
例如,也可以是,在接收所述事物处理数据时,确定所述事物处理数据是与所述第一版本系列或者所述第二版本系列中的哪一方相关的事物处理数据,将所接收到的事物处理数据存储在与所述第一版本系列及所述第二版本系列中的和所确定的所述事物处理数据对应的版本系列对应的分散台账中。
根据上述方式,在通过多个分散台账管理多个版本系列时,确定是属于哪个版本系列的事物处理数据,能够通过适合的分散台账管理该事物处理数据。
例如,也可以是,所述管理方法中,进一步,在废止一个版本系列时,生成表示废止所述一个版本系列的事物处理数据,将所生成的事物处理数据存储在与所述一个版本系列对应的所述分散台账中。
根据上述方式,能够根据规定的事物处理数据适当地废止版本系列。因此,还能够实现版本系列的废止,并且更容易抑制所管理的信息的篡改的发生。
例如,也可以是,所述管理方法中,进一步,参照在所述分散台账中存储的所述事物处理数据,向所述研发者提供令牌。
根据上述方式,能够根据此前的事物处理数据对新的版本的研发者提供令牌。由于被存储在分散台账中的事物处理数据的篡改比较困难,因而能够防止对冒充研发者的不合适的人员提供令牌。这样,能够抑制所管理的信息的篡改的发生,避免不适当的令牌的提供。
例如,也可以是,所述分散台账是区块链,在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述区块链中。
根据上述方式,多个管理装置使用区块链作为分散台账,由此能够更容易抑制所管理的信息的篡改的发生。
有关本发明的一个方式的管理装置是用于管理软件的版本的版本管理系统具备的、保有分散台账的多个管理装置中的第一管理装置,具有:事物处理验证部,从经由网络与所述第一管理装置连接的装置接收事物处理数据,所述事物处理数据包含与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、以及电子签名,所述事物处理验证部使用所接收到的所述事物处理数据中包含的所述电子签名,验证所述事物处理数据的合法性;以及台账管理部,在所述事物处理数据是合法的情况下,将所述事物处理数据存储在所述分散台账中。
由此,发挥与上述管理方法相同的效果。
有关本发明的一个程序,使计算机作为用于管理软件的版本的版本管理系统所具有具备的、保有分散台账的多个管理装置中的第一管理装置而动作,从经由网络与所述第一管理装置连接的装置接收事物处理数据,所述事物处理数据包含与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、以及电子签名,使用所接收到的所述事物处理数据中包含的所述电子签名,验证所述事物处理数据的合法性,在所述事物处理数据是合法的情况下,将所述事物处理数据存储在所述分散台账中。
由此,发挥与上述管理方法相同的效果。
另外,这些概括性的或具体的方式也可由系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等记录介质实现,还可以通过系统、方法、集成电路、计算机程序及记录介质的任意组合来实现。
下面,关于实施方式,参照附图进行具体说明。
另外,下面说明的实施方式均用于示出概括性的或具体的示例。在下面的实施方式中示出的数值、形状、材料、构成要素、构成要素的配置位置及连接方式、步骤、步骤的顺序等仅是一例,其主旨不是限定本发明。并且,关于下面的实施方式的构成要素中、没有在表示最上位概念的独立权利要求中记载的构成要素,作为任意的构成要素进行说明。
(实施方式1)
在本实施方式中,对软件的版本管理方法、即抑制所管理的信息的篡改的发生的管理方法等进行说明。其中,软件是指被安装于例如家电设备(洗衣机、空调机、电冰箱、电视机等),控制该家电设备的动作,并且发挥该家电设备的功能的软件。
图1是表示基于敏捷型研发的软件的版本系列的说明图。
如图1所示,在敏捷型研发中,作为研发商的Z公司研发出最初的版本即版本1(在图中记载为“Ver1”,以下相同),并提供给研发者的团体(community)。然后,以所提供的版本1的软件为基础,属于团体的研发者进行研发而生成各种各样的版本系列。在各版本系列中,例如研发出所发挥的功能彼此不同的软件。版本系列在图1中被表述为如系列1A等。在版本系列中包含一个以上的版本。
在图1中示出了根据版本1的软件,通过研发者A的研发而生成版本1.A1,通过研发者B的研发而生成版本1.B1,通过研发者C的研发而生成版本1.C1。
并且,还可以根据这些版本进行进一步的研发。例如,以版本1.A1为基础,研发出版本1.A2,以版本1.A2为基础,研发出版本1.A3。并且,以版本1.B1为基础,研发出版本1.B2。并且,以版本1.C1为基础,由研发者D及E研发出作为多个版本系列的版本1.C1.D1及版本1.C1.E1。
其中,将自版本1.A1以后的版本(即版本1.A1、根据版本1.A1研发出的版本即版本1.A2及版本1.A3)称为系列1A。同样,将自版本1.B1以后的版本称为系列1B。将版本1.C1称为系列1C。将版本1.C1.D1称为系列1D,将版本1.C1.E1称为系列1E。另外,还将包括版本1、系列1A~1E的所有版本的系列称为系列1。
这样,在敏捷型研发中,以由作为研发商的Z公司提供的软件为基础,由与研发商不同的研发者研发出软件,并生成多个版本系列。
并且,从多个版本中将用户期望的版本提供给用户。例如,将具有用户期望的功能的版本系列中的最新版本提供给用户。
图2是表示敏捷型研发中的令牌(token)的授受的说明图。其中,所谓令牌是与利益或者价值相当的概念,由人(自然人)或者制造商等法人持有,并且可以转让。在敏捷型研发中,通过在研发者、普通用户及制造商之间适当地授受令牌,进行软件的研发。
例如,普通用户接受研发者提供的软件,用户通过在自身保有的家电设备上使该软件进行动作,使家电设备进行工作。普通用户向研发者提供令牌作为接受了软件的提供的回报。
并且,普通用户将使安装了软件的家电设备进行工作时的产品的数据提供给制造商,并接受令牌的提供作为该数据的回报。
在此,普通用户和研发者直接授受令牌,不经由制造商。在发生这样的令牌的授受时,有时基于不合法地获得利益或损害他人的利用等目的,进行所管理的研发者的识别信息的篡改。在识别信息被篡改时,恶意者有可能冒充研发者接受令牌,并冒充他人提供恶意的软件做出差评。
有关本实施方式的管理系统以抑制所管理的信息的篡改的发生为目的。
图3是表示有关实施方式1的管理系统1的结构的说明图。
如图3所示,管理系统1具有多个管理装置10A、10B及10C、多个研发装置20A、20B及20C、和保管服务器30。上述的装置通过网络N可以相互通信地进行连接。
多个管理装置10A、10B及10C(也称为10A等)是通过计算机来管理与软件的版本相关的信息的管理装置。以多个管理装置10A等的个数是3个的情况为例进行说明,但只要在2个以上,则是几个都可以。多个管理装置10A等可以相互通信地进行连接。多个管理装置10A等分别相当于第一管理装置。另外,以后使用管理装置10A代表多个管理装置10A等进行说明,同样的说明在其他的管理装置10B及10C中也成立。另外,多个管理装置10A等还能够通过网络N进行通信。
多个管理装置10A等分别保有用于管理与软件的版本相关的信息的分散台账,通过通信将所保有的分散台账彼此同步并进行更新。若多个管理装置10A等中的任意一方从研发装置20A等中的任意一方获取与新的版本相关的信息,则多个管理装置10A等分别保有所获取的信息的复制信息。分散台账通常难以进行所保有的信息的篡改,并且具有不易受到系统死机的影响的优点。
多个研发装置20A、20B及20C(也称为20A等)是软件的研发者使用的计算机,分别独立地进行工作。另外,以多个研发装置20A等的个数是3个的情况为例进行说明,但只要在1个以上,则是几个都可以。另外,以后使用研发装置20A代表多个研发装置20A等进行说明,同样的说明在其他的研发装置20B及20C中也成立。
研发者使用研发装置20A研发出软件的新版本,将所研发出的新版本的软件发送给保管服务器30进行保管。并且,研发装置20A将与由研发者研发出的新版本相关的信息通过网络N发送给管理装置10A等中的任意一方。
保管服务器30是保管软件的计算机。保管服务器30通过存储装置存储软件的一个以上的版本。
网络N是以可以相互通信的方式连接管理装置10A等、研发装置20A及保管服务器30的通信线路。通信线路的类别没有特别限定,可以是任意组合了有限网络、无线网络的方式。并且,也可以是,因特网的一部分包含在网络N中。
以后,对保管服务器30、研发装置20A等及管理装置10A等进行详细说明。
图4是表示有关本实施方式的保管服务器30的结构的框图。
如图4所示,保管服务器30具有通信部31、保管部32、发行部33和存储装置34。保管服务器30具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
通信部31是与网络N连接的通信接口装置。保管服务器30可以通过通信部31与研发装置20A进行通信。
保管部32是使用存储装置34保管软件的处理部。保管部32通过通信部31从研发装置20A取得新版本的软件,将所取得的软件存储在存储装置34中。并且,按照来自用户的请求读出在存储装置34中存储的软件。
发行部33是发行表示软件所存储的位置的位置信息的处理部。在保管部32将软件存储在存储装置34中的情况下,发行部33取得表示该软件所存储的位置的信息,并生成表示该位置的位置信息,由此发行位置信息。发行部33将所生成的位置信息通知研发装置20A。
位置信息例如是表示存储装置34内的与软件相关的电子文件的在因特网上的位置的URL(Uniform Resource Locator),以后将该情况作为例子进行说明。URL例如包括表示在存储装置34内的所在的路径(Path)及文件名的信息、和保管服务器30的主机名称。
存储装置34是存储软件的存储装置。在存储装置34中存储有一个以上的版本的软件。在存储装置34中,通过保管部32来存储软件,并且通过保管部32读出软件。
图5是表示有关本实施方式的研发装置20A的结构的框图。另外,研发装置20B及20C也具有相同的结构,并分别独立地进行工作。
如图5所示,研发装置20A具有通信部21、研发部22、事物处理(transaction)生成部23和存储装置24。研发装置20A具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
通信部21是与网络N连接的通信接口装置。研发装置20A可以通过通信部21与保管服务器30及管理装置10A进行通信。
研发部22是根据用户进行的操作或者用于软件研发的工具的功能,生成由研发者研发出的软件的新版本的处理部。具体地,研发部22保有成为软件的研发的基础的版本(相当于第一版本)的软件(或者,程序或程序代码),根据所保有的软件生成新的版本(相当于第二版本)的软件。这样,研发者使用研发装置20A(具体地是研发部22)研发软件的新的版本。将研发新的版本也称为版本升级。研发部22将所研发的新版本的软件通过通信部21发送给保管服务器30进行保管。此时,研发部22由保管服务器30(具体地是发行部33)通知表示在保管服务器30内保管的软件的存储位置的URL。
事物处理生成部23是生成包括与软件的版本相关的信息的事物处理数据的处理部。事物处理数据至少包括与软件的第一版本相关的信息(相当于第一信息)、与由研发者根据第一版本进行版本升级的第二版本相关的信息(相当于第二信息)、研发者的识别信息即研发者ID、和研发者的电子签名。研发者的电子签名是根据该事物处理数据中包含的信息,通过研发者的密钥的加密而生成的。研发者的识别信息及密钥可以通过由事物处理生成部23从存储装置24读出来取得。并且,事物处理生成部23将所生成的事物处理数据通过通信部21发送给管理装置10A。
并且,事物处理生成部23生成新版本号的发行委托并发送给管理装置10A,作为其响应,接受新版本号的通知。
存储装置24是存储有关研发者的信息及有关软件的信息的存储装置。有关研发者的信息包括研发者的识别信息即研发者ID和研发者的密钥信息(包括密钥)。研发者ID是可以唯一地识别研发者的信息。有关软件的信息包括软件本体、表示软件在保管服务器30中的存储位置的URL。其中,软件本体是指软件的程序,在图5中简单地记述为“软件”。在存储装置24中存储的软件本体通过研发部22被读出。在存储装置24中存储的研发者ID、密钥信息及URL,通过事物处理生成部23被读出。
图6是表示有关本实施方式的管理装置10A的结构的框图。
如图6所示,管理装置10A具有通信部11、号码管理部12、事物处理验证部13、台账管理部14和令牌管理部16。管理装置10A具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
通信部11是与网络N连接的通信接口装置。管理装置10A可以通过通信部11与研发装置20A及其他的管理装置10B及10C进行通信。
号码管理部12是管理软件的版本的版本号的处理部。号码管理部12若从研发装置20A接受到软件的新的版本号的发行委托,则按照该发行委托发行新的版本号并通知研发装置20A。号码管理部12发行当前保有的版本中比最新的版本的版本号前进的版本号。另外,在版本具有多个系列的情况下,号码管理部12按照每个系列接受新版本号的发行委托,并按照每个系列发行版本号。
其中,版本号是按照规定的规则设定的。例如,使用数值设定成在版本越前进时(即越进行版本升级时)具有越大的数值。此时,还可以同时使用数值和字符。在此,示出利用字符表示版本系列的例子。即,将以最初的版本即版本1为基础而研发出的系列1A中包含的版本,称为版本1.A1、版本1.A2及1.A3等。并且,以版本1为基础,将与系列1A不同地所研发出的系列1B中包含的版本称为版本1.B1及版本1.B2等。
事物处理验证部13是进行事物处理数据的合法性的验证的处理部。事物处理验证部13通过通信部11从研发装置20A接收事物处理数据。所接收的事物处理数据包括与软件的第一版本相关的信息、与由研发者根据第一版本进行版本升级的软件的第二版本相关的第二信息、研发者的识别信息、和研发者的电子签名。事物处理验证部13若接收事物处理数据,则使用所接收到的事物处理数据中包含的电子签名,对该事物处理数据的合法性进行验证。事物处理数据的合法性的验证是使用该事物处理数据中包含的信息和研发者的公开密钥进行的,并判定该事物处理数据是否合法的。更具体地,判定该事物处理数据确实是通过研发装置20A生成的事物处理数据、以及自该事物处理数据自生成起未被篡改。另外,也将事物处理数据的合法性的验证简称为事物处理数据的验证。
另外,在事物处理验证部13接收到的事物处理数据中可以包含由号码管理部12通知的新的版本号。
并且,在事物处理验证部13接收到的事物处理数据中,还可以包含新版本的软件的位置信息即URL。
台账管理部14是管理用于管理软件的版本的分散台账的处理部。在此,以分散台账是区块链15的情况为例进行说明,但也可以采用其它方式的分散台账(例如IOTA或者哈希图等)。
在事物处理验证部13验证了事物处理数据的情况下,台账管理部14将事物处理数据发送给其它的管理装置10B及10C,由此获取事物处理数据的同步。并且,台账管理部14在管理装置10A与其它的管理装置10B及10C之间执行共识算法(consensus algorithm)。当在共识算法中形成了共识的情况下,生成包括该事物处理数据的区块,将所生成的区块存储在区块链15中。
另外,共识算法的一例是PBFT(Practiacl Byzantine Fault Tolerance),但不限于此,也可以使用PoW(Proof of Work)或者PoS(Proof of Stake)等。
令牌管理部16是管理由用户及研发者分别保有的令牌的处理部。令牌管理部16参照在区块链15存储的事物处理数据,将令牌提供给研发者。另外,令牌管理部16还可以在令牌的管理中使用区块链。
下面,关于用于使管理装置10A等管理软件的新版本的事物处理数据的结构,示出三个例子。
图7是表示有关本实施方式的事物处理数据的第一例即事物处理数据40的说明图。事物处理数据40是这样的例子:与软件的第一版本相关的第一信息包括第一版本的版本号,与软件的第二版本相关的第二信息包括软件的第二版本的哈希值和第二版本的版本号。
如图7所示,事物处理数据40包括研发者ID41、URL42、新版本号43、基础版本号44、新版本的哈希值45和签名46。
研发者ID41是研发出利用该事物处理数据40重新进行管理的新版本的研发者的识别信息。
URL42是表示利用该事物处理数据40重新进行管理的新版本所存储的位置的URL。URL42示出在保管服务器30的存储装置34中存储有新版本的软件的位置。
新版本号43是利用事物处理数据40重新进行管理的新版本的版本号。
基础版本号44是成为利用事物处理数据40重新进行管理的新版本的研发的基础的版本(也称为基础版本)的版本号。
新版本的哈希值45是通过对利用事物处理数据40重新进行管理的新版本的程序的全部或者一部分进行哈希运算得到的哈希值。
签名46是根据事物处理数据40中包含的信息,通过研发者的密钥的加密而生成的电子签名。具体地,是将通过针对包括研发者ID41、URL42、新版本号43、基础版本号44及新版本的哈希值45的信息进行的哈希运算而得到的哈希值,利用研发者的密钥进行加密得到的值。
图8是表示有关本实施方式的事物处理数据的第二例即事物处理数据50的说明图。事物处理数据50是这样的例子:与软件的第一版本相关的第一信息包括软件的第一版本的哈希值,与软件的第二版本相关的第二信息包括软件的第二版本的哈希值。
如图8所示,事物处理数据50包括研发者ID51、URL52、新版本的哈希值53、基础版本的哈希值54和签名55。
研发者ID51及URL52与事物处理数据40中的同名的信息相同。
新版本的哈希值53是通过对利用事物处理数据50重新进行管理的新版本的软件的程序的全部或者一部分进行哈希运算得到的哈希值。
基础版本的哈希值54是通过对基础版本的软件的程序的全部或者一部分进行哈希运算得到的哈希值,该基础版本为利用事物处理数据50重新进行管理的新版本的研发的基础。
签名55是根据事物处理数据50中包含的信息,通过研发者的密钥的加密而生成的电子签名。具体地,是将通过针对包括研发者ID51、URL52、新版本的哈希值53及基础版本的哈希值54的信息进行的哈希运算得到的哈希值,利用研发者的密钥进行加密而得到的值。
图9是表示有关本实施方式的事物处理数据的第三例即事物处理数据60的说明图。事物处理数据60是这样的例子:与软件的第一版本相关的第一信息包括软件的第一版本的哈希值,与软件的第二版本相关的第二信息包括软件的第一版本与第二版本的差分的哈希值。
如图9所示,事物处理数据60包括研发者ID61、URL62、差分的哈希值63、基础版本的哈希值64和签名65。
研发者ID61及URL62与事物处理数据40中的同名的信息相同。
差分的哈希值63是利用事物处理数据60重新进行管理的新版本的程序、与成为新版本的研发的基础的基础版本的程序的差分的哈希值。
基础版本的哈希值64是通过对利用事物处理数据60重新进行管理的新版本的软件的程序的全部或者规定的一部分进行哈希运算得到的哈希值。
签名65是根据事物处理数据60中包含的信息,通过研发者的密钥的加密而生成的电子签名。具体地,是将通过针对包括研发者ID61、URL62、差分的哈希值63及基础版本的哈希值64的信息进行的哈希运算得到的哈希值,利用研发者的密钥进行加密而得到的值。
下面,对在区块链15存储的事物处理数据进行说明。
图10是表示有关本实施方式的在区块链15存储的事物处理数据的示例的说明图。具体地,图10是由管理装置10A等利用区块链15进行管理的事物处理数据。图10所示的一个条目(entry)(1行)对应于一个事物处理数据。在图10中,位于纸面上的下部的数据是更新的事物处理数据。
如图10所示,各事物处理数据包括有关软件的各版本的URL、新版本号、基础版本号及研发者ID。另外,图10所示的事物处理数据相当于图7所示的事物处理数据40中所包含的各信息。
在区块链15中按照图10所示存储有有关当前时刻之前的软件的各版本的信息。具体地,存储有表示从版本1研发出版本1.A1、1.A2及1.A3、以及从版本1研发出版本1.B1及1.B2的信息。
并且,有关当前时刻之前的各版本的信息按照篡改困难这样的区块链的特性,通过管理装置10A进行管理使得不能篡改。
下面说明管理系统1的处理。
图11及图12是表示有关本实施方式的管理系统1的第一及第二处理的程序图。图11及图12表示从通过研发装置20A研发出软件的新版本、到通过管理装置10A等管理所研发出的软件的版本的一系列的处理。
如图11所示,在步骤S121中,通过研发装置20A完成软件的新版本。
在步骤S122中,研发装置20A将在步骤S121中研发出的新版本的软件发送给保管服务器30,以便存储在保管服务器30中。
在步骤S131中,保管服务器30接收从研发装置20A发送的新版本的软件,并存储在存储装置34中。
在步骤S132中,保管服务器30发行表示在步骤S131中存储的新版本的软件的位置的URL。并且,保管服务器30将所发行的URL发送给研发装置20A。URL可以作为针对在步骤S122中接收到的软件的响应进行发送。
在步骤S123中,研发装置20A生成新版本号(也称为新号码)的发行委托,并发送给管理装置10A。在此,发行委托是指,用于向管理装置10A委托发行对软件的新版本赋予的新号码即新版本号码的通信数据,至少包括基础版本号。
在步骤S111中,管理装置10A接收在步骤S123中发送的发行委托,判定发行委托中包含的基础版本是否被存储在由管理装置10A管理的区块链15中。在判定为基础版本存储在区块链15中的情况下(步骤S111:是),进入步骤S112。
另外,在判定为基础版本未存储在区块链15中的情况下(未图示),管理装置10A执行规定的故障处理(例如向研发装置20A发送表示发行失败的通知的处理),并结束处理。但是,在这种情况下,管理装置10A也可以不进行任何处理就结束处理。这样,被判定为基础版本未存储在区块链15中的情况,例如是使管理装置10A等管理在管理装置10A等中未管理的版本的软件的时候。
在步骤S112中,管理装置10A发行新版本的版本号。
进入图12,在步骤S113中,管理装置10A将在步骤S112中发行的新版本的版本号通知研发装置20A。新版本的版本号的通知可以作为针对步骤S123的发行委托的响应进行发送。
在步骤S124中,生成用于将新版本写入区块链15的事物处理数据,并发送给管理装置10A。在该事物处理数据中包含通过步骤S113而发送的新版本号或者使用该新版本号计算出的信息。
在步骤S114中,管理装置10A对在步骤S124中研发装置20A发送的事物处理数据进行验证。在此,假设事物处理数据的验证的结果是,被判定为事物处理数据是合法的。
在步骤S115中,管理装置10A将事物处理数据发送给管理装置10B及10C。并且,通过由管理装置10A等执行共识算法,包括事物处理数据的区块被存储在区块链15中。由此,与研发者研发出的软件的新版本相关的信息,更具体地是研发者ID及版本号被存储在区块链15中,自该存储时起,篡改变困难。
另外,也可以是,当在步骤S114中事物处理数据的验证失败、即被验证为事物处理数据是不合法的情况下,将该情况通知研发装置20A。这样,研发者能够识别到该情况并进行应对。另一方面,也可以不进行上述通知。
另外,也可以由管理装置10A将软件自身存储在区块链15中进行管理。这样,不仅能够管理有关版本的信息,而且还能够抑制软件自身的篡改并管理软件,比较有用。为此,研发装置20A生成包括软件自身(即软件的程序代码)的事物处理数据并发送给管理装置10A,管理装置10A将所接收到的上述事物处理数据存储在区块链15中。
另外,研发装置20A是通过网络与管理装置10A连接的装置的一例,并以此情况为例进行了说明,但上述装置不限于研发装置20A。例如,受研发者委托的人使用的装置也属于通过网络与管理装置10A连接的装置。在这种情况下,将上述说明中的“研发者”改写为“受研发者委托的人”,上述说明即成立。
如上所述,根据本实施方式的管理方法,与进行软件的版本升级的研发者相关的信息通过分散台账进行管理。分散台账具有所保有的信息的篡改困难、并且不易受到系统死机的影响的优点。因此,根据上述管理方法,能够抑制所管理的信息的篡改的发生。
并且,发行新的版本的版本号,并与和该发行的版本号相关联地管理与新的版本的研发者相关的信息。如果通过与该版本管理系统不同的装置等赋予版本号,则有可能产生版本号的重复等问题。根据有关本发明的管理方法,能够避免版本号的问题,抑制所管理的信息的篡改的发生。
并且,使用第一版本的版本号、第二版本的哈希值和第二版本的版本号,能够更容易抑制所管理的信息的篡改的发生。
并且,使用第一版本的哈希值和第二版本的哈希值,能够更容易抑制所管理的信息的篡改的发生。
并且,使用第一版本的哈希值、和第一版本与第二版本的差分的哈希值,能够更容易抑制所管理的信息的篡改的发生。
并且,表示第二版本的软件的存储位置的信息,与有关研发者的信息一起被存储在分散台账中。因此,能够抑制存储有第二版本的位置信息的篡改的发生,并抑制所管理的信息的篡改的发生。
并且,能够根据此前的事物处理数据对新版本的研发者提供令牌。由于被存储在分散台账中的事物处理数据的篡改比较困难,因而能够防止对冒充研发者的不合适的人员提供令牌。这样,能够抑制所管理的信息的篡改的发生,避免提供不合适的令牌。
并且,多个管理装置使用区块链作为分散台账,从而能够更容易抑制所管理的信息的篡改的发生。
(实施方式2)
在本实施方式中,对软件的版本管理方法即抑制所管理的信息的篡改的发生的管理方法等进行说明。特别对在软件的主要版本升级时,在版本升级的前后利用不同的区块链管理版本的技术进行说明。
其中,所谓主要版本升级是指通常对基础版本进行比较大的功能修正或者追加的版本升级。与此相对,在实施方式1中说明的由第一版本向第二版本的版本升级,是进行比较小的功能修正或者追加的版本升级,通常也被称为次要版本升级。主要版本升级例如是根据Z公司的决定进行的。
图13是表示有关本实施方式的版本系列的分支的说明图。
图13所示的版本1(在图13中记述为“Ver1”)等与有关实施方式1的软件的版本相当。在此,将进行了上述软件的研发的研发者的团体称为“版本1的团体”。
当在软件研发中进行主要软件升级时,将由版本1的团体研发的系列1的一部分或者全部的复制品作为新的版本系列即系列2进行使用。此时,作为系列2使用的是至少包括由版本1的团体研发出的版本的系列1中的最新版本的版本的系列,也可以是包括由版本1的团体研发出的版本系列中的所有版本的版本系列。
这样,将由系列1的一部分或者全部生成新的系列2,称为“将系列分支”。换言之,分支是指由系列1的一部分或者全部生成新的系列2。
并且,以作为系列2的最初的版本的版本(在图13中称为“Ver2”)为基础,由属于版本2的团体的研发者进行研发,生成各种各样的版本系列。在图13中示出了根据版本2的软件,通过研发者F的研发而生成版本2.F1,通过研发者G的研发而生成版本2.G1。另外,以版本2.F1为基础,研发出2.F2。
图14是表示有关本实施方式的管理系统2的结构的说明图。
如图14所示,管理系统2具有多个管理装置10D、10E及10F、多个研发装置20A等、保管服务器30和控制装置70。多个研发装置20A等和保管服务器30分别与实施方式1中的同名的构成要素相同,因而省略说明。
控制装置70是进行使管理装置10D等进行版本系列的分支的控制的控制装置。具体地,作为上述控制,控制装置70发送包括进行版本系列的分支的指示即分支指示的通信数据。该通信数据可以根据用户对控制装置70的操作等进行发送。
多个管理装置10D、10E及10F(也称为10D等)与实施方式1中的多个管理装置10A一样,是通过计算机来管理版本信息的管理装置。管理装置10D等具有与管理装置10A等相同的功能,还具有根据从控制装置70发送的分支指示,生成版本系列的分支的功能。
图15是表示有关本实施方式的控制装置70的结构的框图。
如图15所示,控制装置70具有通信部71和分支指示部72。
通信部71是与网络N连接的通信接口装置。控制装置70可以通过通信部71与管理装置10D进行通信。控制装置70具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
分支指示部72是通过通信部71向管理装置10D发送进行分支的指示(分支指示)的处理部。分支指示至少包括用于确定成为分支的基础的版本系列的信息。
图16是表示有关本实施方式的管理装置10D的结构的框图。
如图16所示,管理装置10D具有通信部11、号码管理部12、事物处理验证部13和台账管理部14A。管理装置10D具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
管理装置10D具有台账管理部14A,这一点与实施方式1的管理装置10A不同。下面,主要对台账管理部14A进行说明。
台账管理部14A具有分支部17。并且,除区块链15外,还可以保有区块链15A。
分支部17是使软件的版本系列进行分支并生成新的系列的处理部。分支部17通过通信部11接收包括控制装置70发送的分支指示的通信数据,在接收到上述通信数据的情况下,生成软件的版本系列的分支。此时,分支部17通过生成与新的版本系列对应的区块链15A使版本系列进行分支,该新的版本系列具有至少包括与此前进行了版本升级的版本系列对应的区块链15中的最新版本的一个以上的版本的复制品。
在版本系列的分支之后,事物处理验证部13在接收事物处理数据时,确定事物处理数据是否是与第一版本系列或者第二版本系列中的某一方相关的事物处理数据,将所接收到的事物处理数据存储在与第一版本系列及第二版本系列中特定的事物处理数据对应的版本系列所对应的分散台账中。
下面,对本实施方式的台账管理部14A管理的区块链15及15A进行说明。
图17及图18是表示有关本实施方式的在区块链15及15A中存储的事物处理数据的说明图。具体地,图17所示的事物处理数据是在与包括版本1的版本系列即系列1对应的区块链15中存储的事物处理数据。图18所示的事物处理数据是在与包括版本2的版本系列即系列2对应的区块链15A中存储的事物处理数据。
如图17所示,与系列1对应的区块链15中包含的各事物处理数据,与图10所示的区块链15一样,包括有关软件的各版本的URL、新版本号、基础版本号及研发者ID。具体地,区块链15包括有关版本1.A1、1.A2及1.B1等的上述各信息。
并且,如图18所示,与系列2对应的区块链15A中包含的各事物处理数据,与图10所示的区块链15一样,包括有关软件的各版本的URL、新版本号、基础版本号及研发者ID。具体地,区块链15A包括有关版本2.D1、2.D2及2.E1等的上述各信息。
下面,说明管理系统2的处理。
图19是表示有关本实施方式的管理系统2的处理的程序图。
如图19所示,控制装置70在步骤S271中,在Z公司进行了使版本系列分支的决定时,生成包括分支指示的通信数据并发送给管理装置10D。
在步骤S211中,管理装置10D在接收到在步骤S271中发送的分支指示时,生成用于生成与新的版本系列对应的区块链(与图16的区块链15A相当)的事物处理数据。
在步骤S212中,管理装置10D将在步骤S211中生成的事物处理数据发送给管理装置10E及10F。并且,通过管理装置10D等执行共识算法,包括事物处理数据的区块被存储在区块链中。由此,与新的版本系列对应的软件的新版本所相关的信息、更具体地是研发者ID及版本号被存储在区块链中,自存储时起的篡改变困难。
然后,对与多个版本系列分别对应的区块链通过管理装置10D等进行管理时的新版本的管理进行说明。
图20是表示有关本实施方式的事物处理数据的示例即事物处理数据40A的说明图。
事物处理数据40A对图7所示的事物处理数据40还追加了系列号码43A。
系列号码43A是表示利用该事物处理数据40A重新进行管理的新版本的系列的信息。
另外,签名46是根据事物处理数据40A中包含的信息,通过研发者的密钥的加密而生成的电子签名。在成为签名46的生成基础的信息中,除成为图7的签名46的生成基础的信息以外,还包括系列号码43A。
在存在多个系列的情况下,研发装置20A将表示软件的新版本所属的系列的系列号码43A包含在事物处理数据40A中,并发送给管理装置10D。管理装置10D在接收事物处理数据40A时,取得所接收到的事物处理数据40A中包含的系列号码,将事物处理数据40A存储在与该系列号码对应的区块链中。
图21是表示有关本实施方式的与在共识算法中包含的版本系列相关的处理的流程图。图21所示的处理是包含在图12的步骤S115的共识算法中的处理。
在步骤S141中,管理装置10D取得所接收到的事物处理数据40A中包含的系列号码。
在步骤S142中,管理装置10D从由台账管理部14A管理的多个区块链中,确定与在步骤S141中取得的系列号码对应的区块链。
在步骤S143中,管理装置10D在与管理装置10E及10F之间,对在步骤S142中确定的区块链执行共识算法。由此,将所接收到的事物处理数据40A存储在通过步骤S142所确定的区块链中。
这样,事物处理数据被存储在与通过研发装置20A指定的系列号码对应的区块链中。
如上所述,根据本实施方式的管理方法,管理与多个版本系列分别对应的分散台账,在版本系列的分支时,生成与新的系列对应的分散台账。当在一个系列中进行多个版本升级时,在取得版本升级的历史等信息时,得到与多个版本升级分别对应的信息,有可能处理负荷提高。在这种情况下,通过将版本系列进行分支,用新的分散台账管理新的版本系列,能够减少版本升级的历史等信息,防止上述的处理负荷的上升。
并且,在利用多个分散台账来管理多个版本系列时,能够确定是属于哪一个版本系列的事物处理数据,利用适合的分散台账管理该事物处理数据。
(实施方式3)
在本实施方式中,对软件的版本管理方法即抑制所管理的信息的篡改的发生的管理方法等进行说明。特别对以停止软件的版本系列的利用的方式管理版本的技术进行说明。将停止版本系列的利用也称为将版本系列废止。
图22是表示有关本实施方式的版本系列的废止的说明图。
图22所示的Ver1及Ver2相当于有关实施方式2的软件的版本。
在软件研发中,由于生成了比较新的版本系列等原因,进行停止比较旧的版本系列的利用,即进行废止。所废止的版本系列被控制成禁止自被废止的时刻起的版本升级。并且,还可以控制成自被废止的时刻起,禁止对用户提供被废止的系列中包含的各版本的软件。
具体地,如图22所示,在版本1.A的版本系列的最新版本1.A3及版本1.B的版本系列的最新版本1.B2存在的时刻,系列1被废止。于是,例如版本1.A的版本系列中可能包含的下一个版本1.A4(未图示)或者版本1.B的版本系列中可能包含的下一个版本1.B3(未图示)的登记被禁止。并且,自被废止的时刻起,禁止对用户提供被版本1、版本1.A及版本1.B的各系列的软件。
有关本实施方式的管理系统2与实施方式2的管理系统2相同,但控制装置及管理装置的功能的一部分不同。具体地,本实施方式的管理系统2具有控制装置70A,管理装置10G、10H及10I(也称为10G等),下面对有关本实施方式的控制装置70A及管理装置10G进行详细说明。
图23是表示有关本实施方式的控制装置70A的结构的框图。
如图23所示,控制装置70A具有通信部71和事物处理生成部73。另外,控制装置70A还可以与实施方式2的控制装置70一样地具有分支指示部72。
通信部71与实施方式2的控制装置70A具有的通信部71相同。
事物处理生成部73是生成表示将版本系列废止的事物处理数据的处理部。事物处理生成部73将所生成的事物处理数据发送给管理装置10G。上述事物处理数据至少包括系列号码作为可以确定要废止的版本系列的确定信息。
图24是表示有关本实施方式的管理装置10G的结构的框图。
如图24所示,管理装置10G具有通信部11、号码管理部12、事物处理验证部13、台账管理部14A和废止部18。并且,管理装置10G还可以具有状态管理部19。管理装置10G具备的各功能可以通过由处理器使用存储器执行规定的程序来实现。
管理装置10G具有废止部18以及具有状态管理部19,在这两点上与实施方式1的管理装置10A及实施方式2的管理装置10D不同。下面,主要对废止部18及状态管理部19进行说明。
废止部18是在与要废止的版本系列对应的区块链中,存储包括表示将该版本系列废止的信息的区块的处理部。废止部18接收控制装置70A发送的、表示将版本系列废止的事物处理数据。废止部18在与利用所接收到的事物处理数据中包含的系列号码确定的版本系列对应的区块链中存储该事物处理数据。
状态管理部19是管理表示各版本系列是运转状态还是废止状态的信息的处理部。状态管理部19对管理装置10G管理的版本系列分别保存表示是运转状态还是废止状态的信息。并且,在废止部18将废止版本系列的事物处理存储在区块链中时,状态管理部19将该版本系列的状态由运转状态变更为废止状态。另外,状态管理部19不是必须的结构。
图25是表示有关本实施方式的事物处理数据的示例即事物处理数据80的说明图。
如图25所示,事物处理数据80包括系列号码81、废止信息82和签名83。
系列号码81是确定根据事物处理数据80而被废止的版本系列的信息。
废止信息82是意味着事物处理数据80是表示废止的事物处理数据的信息。
签名83是根据事物处理数据80中包含的信息,通过控制装置70A的密钥的加密而生成的电子签名。具体地,是将通过针对包括系列号码81及废止信息82的信息进行的哈希运算而得到的哈希值,利用控制装置70A的密钥进行加密而得到的值。
图26是表示有关本实施方式的在区块链中存储的事物处理数据的说明图。具体地,图26所示的事物处理数据是与版本1的版本系列对应的区块链15。
如图26所示,与版本1的版本系列对应的区块链15中包含的各事物处理数据,与图10所示的区块链15一样,包括有关软件的各版本的URL、新版本号、基础版本号及研发者ID。具体地,区块链15包括有关版本1.A1、1.A2及1.B1等的上述各信息。
并且,区块链15中包含的事物处理数据91是将版本系列1A设为废止状态的事物处理数据。并且,区块链15中包含的事物处理数据92是将版本系列1B设为废止状态的事物处理数据。
图27是表示有关本实施方式的状态管理部19管理的状态信息的状态表T1的说明图。
如图27所示,状态表T1具有表示版本系列1A及1B的状态的信息。在图27中示出了版本系列1A是废止状态,版本系列1B是运用状态。这对应于台账管理部14A保有与版本1和版本2的各系列对应的区块链,版本1的系列被废止,版本2的系列在运用中的情况。
下面说明管理系统2的处理。
图28是表示有关本实施方式的管理系统2的处理的程序图。
如图28所示,控制装置70A在步骤S371中生成将版本系列废止的事物处理数据,并发送给管理装置10G。
在步骤S311中,管理装置10G在接收到在步骤S371中发送的事物处理数据时,对所接收到的事物处理数据进行验证。事物处理数据的验证是通过该事物处理数据中包含的信息和控制装置70A的公开密钥进行的。在此,假设事物处理数据的验证的结果是,被判定为事物处理数据是合法的。
在步骤S312中,管理装置10G将在步骤S312中生成的事物处理数据发送给管理装置10H及10I。并且,通过管理装置10G等执行共识算法,包括事物处理数据的区块被存储在区块链中。由此,表示版本系列的废止的信息被存储在区块链中,以后的篡改变困难。并且,自此以后,禁止区块向与所废止的版本系列对应的区块链的连接,并且还禁止提供所废止的版本系列中包含的软件。
另外,也可以是,当在步骤S311中事物处理数据的验证失败、即被验证为事物处理数据是不合法的情况下,将该情况通知控制装置70A。这样,控制装置70A的运用者能够识别该情况并进行应对。另一方面,也可以不进行上述通知。
另外,也可以是,管理装置10G在针对已经废止的版本系列,从研发装置20A接收到新版本号的发行委托的情况下,发送表示该版本系列已经被废止的通知。并且,也可以是,在管理装置10G将版本系列废止时,令牌管理部16对所废止的版本系列中包含的版本的研发者提供令牌。该令牌还可以说具有作为奖励金或者准备金的意思。
对上述各实施方式中的区块链进行补充说明。
图29是表示区块链的数据构造的说明图。
区块链用于将作为其记录单位的区块连接成链(链条)状。各个区块具有多个事物处理数据和紧前面的区块的哈希值。具体地,在区块B2中包含其前面的区块B1的哈希值。并且,根据区块B2中包含的多个事物处理数据和区块B1的哈希值运算出的哈希值,作为区块B2的哈希值包含在区块B3中。这样,通过包含前面的区块的内容作为哈希值,并将区块连接成链状,有效地防止所记录的事物处理数据的篡改。
假设过去的事物处理数据被变更时,区块的哈希值成为与变更前不同的值,为了将所篡改的区块假装成正确的区块,必须重新生成自此以后的所有区块,该作业实际上非常困难。使用该性质,确保区块链难以篡改。
图30是表示事物处理数据的数据构造的说明图。
图30所示的事物处理数据包括事物处理本体P1和电子签名P2。事物处理本体P1是该事物处理数据中包含的数据本体。电子签名P2是通过利用该事物处理数据的生成者的签名密钥对事物处理本体P1的哈希值进行签名而生成的,更具体地,是利用生成者的密钥进行加密而生成的。
事物处理数据具有电子签名P2,因而实质上不可能进行篡改。由此,防止事物处理本体的篡改。
如上所述,根据本实施方式的管理方法,能够根据规定的事物处理数据适当地将版本系列废止。因此,能够实现版本系列的废止,并且更容易抑制所管理的信息的篡改的发生。
另外,在上述各实施方式中,各构成要素也可以由专用的硬件构成、或者通过执行适合于各构成要素的软件程序来实现。各构成要素还可以通过由CPU或者处理器等的程序执行部读出并执行在硬盘或者半导体存储器等记录介质中记录的软件程序来实现。在此,用于实现上述各实施方式的管理装置等的软件是如下所述的程序。
即,该程序是使计算机执行管理方法的程序,该管理方法是由版本管理系统执行的软件的版本的管理方法,所述版本管理系统具备保有分散台账的多个管理装置,在所述管理方法中,所述多个管理装置中的第一管理装置从通过网络与所述第一管理装置连接的装置接收事物处理数据,所述事物处理数据包括与所述软件的第一版本相关的第一信息、与由研发者根据所述第一版本进行版本升级的所述软件的第二版本相关的第二信息、所述研发者的识别信息、和电子签名,所述第一管理装置使用所接收到的所述事物处理数据中包含的所述电子签名,验证所述事物处理数据的合法性,在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述分散台账中。
以上,根据实施方式对有关一个或者多个方式的管理方法等进行了说明,但本发明不限于该实施方式。只要不脱离本发明的主旨,对本实施方式本领域技术人员可以想到的各种变形得到的方式、或将不同的实施方式中的构成要素进行组合而构成的方式,都可以包含在一个或者多个方式的范围中。
产业上的可利用性
本发明涉及软件的版本管理方法,可以用于抑制所管理的信息的篡改的发生的管理系统等。

Claims (13)

1.一种管理方法,是由版本管理系统执行的软件的版本的管理方法,
所述版本管理系统具备保有分散台账的多个管理装置,
在所述管理方法中,
所述多个管理装置中的第一管理装置从经由网络与所述第一管理装置连接的装置接收事物处理数据,该事物处理数据包含与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、以及电子签名,
所述第一管理装置使用所接收到的所述事物处理数据中所包含的所述电子签名,验证所述事物处理数据的合法性,
在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述分散台账中。
2.根据权利要求1所述的管理方法,其中,
所述第二信息包含所述第二版本的版本号,
在所述管理方法中,进一步,
在接收所述事物处理数据之前从所述装置接收到所述第二版本的版本号的发行委托的情况下,将新版本号作为所述第二版本的版本号发送给所述装置,
在接收所述事物处理数据时,接收包含发送给所述装置的所述新版本号作为所述第二信息的所述事物处理数据。
3.根据权利要求1所述的管理方法,其中,
所述第一信息包含所述软件的所述第一版本的版本号,
所述第二信息包含所述软件的所述第二版本的哈希值和所述第二版本的版本号。
4.根据权利要求1所述的管理方法,其中,
所述第一信息包含所述软件的所述第一版本的哈希值,
所述第二信息包含所述软件的所述第二版本的哈希值。
5.根据权利要求1所述的管理方法,其中,
所述第一信息包含所述软件的所述第一版本的哈希值,
所述第二信息包含所述软件的所述第一版本与所述第二版本的差分的哈希值。
6.根据权利要求1所述的管理方法,其中,
所述装置保有表示存储有所述软件的所述第二版本的位置的位置信息,
在所述管理方法中,
在接收所述事物处理数据时,接收包含所述位置信息的所述事物处理数据。
7.根据权利要求1所述的管理方法,其中,
在所述管理方法中,在从所述软件的第一版本系列分支出第二版本系列时,
生成新的分散台账,所述新的分散台账具有至少包含所述第一版本系列中的最后版本的一个以上的版本作为所述第二版本系列的一个以上的版本,所述多个管理装置保有所述新的分散台账。
8.根据权利要求7所述的管理方法,其中,
在接收所述事物处理数据时,确定所述事物处理数据是与所述第一版本系列或者所述第二版本系列中的哪一方相关的事物处理数据,
将所接收到的所述事物处理数据存储在与所述第一版本系列及所述第二版本系列中的和所确定的所述事物处理数据对应的版本系列对应的分散台账中。
9.根据权利要求1所述的管理方法,其中,
在所述管理方法中,进一步,
在废止一个版本系列时,
生成表示废止所述一个版本系列的事物处理数据,将所生成的事物处理数据存储在与所述一个版本系列对应的所述分散台账中。
10.根据权利要求1所述的管理方法,其中,
在所述管理方法中,进一步,
参照所述分散台账中所存储的所述事物处理数据,向所述研发者提供令牌。
11.根据权利要求1~10中任意一项所述的管理方法,其中,
所述分散台账是区块链,
在所述事物处理数据是合法的情况下,所述多个管理装置分别将所述事物处理数据存储在所述区块链中。
12.一种管理装置,是用于管理软件的版本的版本管理系统所具有的、保有分散台账的多个管理装置中的第一管理装置,其具有:
事物处理验证部,从经由网络与所述第一管理装置连接的装置接收事物处理数据,该事物处理数据包含与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、以及电子签名,所述事物处理验证部使用所接收到的所述事物处理数据中所包含的所述电子签名,验证所述事物处理数据的合法性;以及
台账管理部,在所述事物处理数据是合法的情况下,将所述事物处理数据存储在所述分散台账中。
13.一种记录介质,记录有使计算机作为用于管理软件的版本的版本管理系统所具有的、保有分散台账的多个管理装置中的第一管理装置而动作的程序,
从经由网络与所述第一管理装置连接的装置接收事物处理数据,该事物处理数据包含与所述软件的第一版本相关的第一信息、与研发者根据所述第一版本进行版本升级而得到的所述软件的第二版本相关的第二信息、所述研发者的识别信息、以及电子签名,使用所接收到的所述事物处理数据中所包含的所述电子签名,验证所述事物处理数据的合法性,
在所述事物处理数据是合法的情况下,将所述事物处理数据存储在所述分散台账中。
CN201910514732.5A 2018-06-18 2019-06-14 管理方法、管理装置及记录介质 Pending CN110619235A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862686359P 2018-06-18 2018-06-18
US62/686359 2018-06-18
JP2019054577A JP7316812B2 (ja) 2018-06-18 2019-03-22 管理方法、管理装置、及び、プログラム
JP2019-054577 2019-03-22

Publications (1)

Publication Number Publication Date
CN110619235A true CN110619235A (zh) 2019-12-27

Family

ID=66912568

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910514732.5A Pending CN110619235A (zh) 2018-06-18 2019-06-14 管理方法、管理装置及记录介质

Country Status (4)

Country Link
US (1) US11327745B2 (zh)
EP (1) EP3584759B1 (zh)
JP (1) JP7472359B2 (zh)
CN (1) CN110619235A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111090573A (zh) * 2020-03-24 2020-05-01 中国计量大学 基于区块链的研发日志管理方法、装置和电子设备
CN113448617A (zh) * 2021-08-31 2021-09-28 太平金融科技服务(上海)有限公司深圳分公司 数据对象管理方法、装置、计算机设备和存储介质

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11327745B2 (en) * 2018-06-18 2022-05-10 Panasonic Intellectual Property Corporation Of America Preventing falsification in version management
US11126425B2 (en) * 2019-04-19 2021-09-21 Sarcos Corp. Version history management using a blockchain
US11316695B2 (en) * 2019-05-01 2022-04-26 Intuit Inc. System and method for providing and maintaining irrefutable proof of the building, testing, deployment and release of software
US11307848B2 (en) * 2019-07-01 2022-04-19 Bank Of America Corporation System for electronic integration and deployment of computer code in a code development network
CN111381866A (zh) * 2020-05-29 2020-07-07 支付宝(杭州)信息技术有限公司 区块链系统的版本升级方法、系统、及装置
CN111679853A (zh) * 2020-06-08 2020-09-18 中国银行股份有限公司 开源软件的发布方法、装置、计算机设备及可读存储介质
US11249750B2 (en) 2020-06-23 2022-02-15 Bank Of America Corporation Implementing a distributed register to verify the stability of an application server environment for software development and testing
US20220108005A1 (en) * 2021-12-15 2022-04-07 Intel Corporation Protecting software supply chain using secure log generated in a trusted build environment
DE102022000817A1 (de) * 2022-03-09 2023-09-14 Mercedes-Benz Group AG Verfahren zur Dokumentation einer Typkonfiguration für eine Recheneinrichtung, Computerprogramm sowie Datenträger

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1463091A (zh) * 2002-05-31 2003-12-24 华为技术有限公司 基于维护总线的版本管理装置
US20100250400A1 (en) * 2006-11-10 2010-09-30 Media Patents, S.L. Apparatus and methods for the sale of software products
CN102055785A (zh) * 2009-11-09 2011-05-11 杭州华三通信技术有限公司 分布式系统的在线升级方法、分布式系统及设备
CN102549595A (zh) * 2010-07-23 2012-07-04 松下电器产业株式会社 信息处理装置、控制器、密钥发行站、无效化列表有效性判定方法以及密钥发行方法
CN103123582A (zh) * 2005-12-19 2013-05-29 托普科德公司 用于软件支持的系统和方法
US20150205949A1 (en) * 2014-01-17 2015-07-23 Microsoft Corporation Runtime application integrity protection
CN105094875A (zh) * 2014-05-19 2015-11-25 中兴通讯股份有限公司 一种软件升级方法及装置
US10365922B1 (en) * 2018-04-10 2019-07-30 Sap Se Distributed-ledger based enterprise application deployment and management

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8312419B2 (en) * 2008-10-30 2012-11-13 Hewlett-Packard Development Company, L.P. Automated lifecycle management of a computer implemented service
US9336060B2 (en) * 2011-06-17 2016-05-10 Microsoft Technology Licensing, Llc Middleware services framework for on-premises and cloud deployment
JP2014203352A (ja) 2013-04-08 2014-10-27 株式会社日立製作所 ソフトウエア管理装置、及びソフトウエア管理方法
US9274784B2 (en) * 2014-06-02 2016-03-01 Sap Se Automatic deployment and update of hybrid applications
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US10129032B2 (en) 2016-02-16 2018-11-13 Xerox Corporation Secure revisioning auditing system for electronic document files
CN106897348B (zh) 2016-08-19 2020-10-27 创新先进技术有限公司 一种数据存储、数据校验、数据溯源方法和设备
US11159334B2 (en) 2016-10-04 2021-10-26 International Business Machines Corporation Distribution of software signatures using a community catalog based on blockchain
US10698675B2 (en) * 2016-12-19 2020-06-30 International Business Machines Corporation Decentralized automated software updates via blockchain
US20190205121A1 (en) * 2017-12-28 2019-07-04 Paypal, Inc. Distributed code repository management
US11327745B2 (en) * 2018-06-18 2022-05-10 Panasonic Intellectual Property Corporation Of America Preventing falsification in version management

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1463091A (zh) * 2002-05-31 2003-12-24 华为技术有限公司 基于维护总线的版本管理装置
CN103123582A (zh) * 2005-12-19 2013-05-29 托普科德公司 用于软件支持的系统和方法
US20100250400A1 (en) * 2006-11-10 2010-09-30 Media Patents, S.L. Apparatus and methods for the sale of software products
CN102055785A (zh) * 2009-11-09 2011-05-11 杭州华三通信技术有限公司 分布式系统的在线升级方法、分布式系统及设备
CN102549595A (zh) * 2010-07-23 2012-07-04 松下电器产业株式会社 信息处理装置、控制器、密钥发行站、无效化列表有效性判定方法以及密钥发行方法
US20150205949A1 (en) * 2014-01-17 2015-07-23 Microsoft Corporation Runtime application integrity protection
CN105094875A (zh) * 2014-05-19 2015-11-25 中兴通讯股份有限公司 一种软件升级方法及装置
US10365922B1 (en) * 2018-04-10 2019-07-30 Sap Se Distributed-ledger based enterprise application deployment and management

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JONATHAN BELL等: "Advancing Open Science with Version Control and Blockchains", 《2017 IEEE/ACM 12TH INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING FOR SCIENCE (SE4SCIENCE)》, 3 July 2017 (2017-07-03), pages 13 - 14 *
徐保民等: "《 分享收藏 云安全深度剖析 技术原理及应用实践》", 31 January 2016, 机械工业出版社, pages: 107 - 131 *
黄金敢: "基于P2P的网构软件的软件工程管理的研究", 《福州大学学报(自然科学版)》, vol. 37, no. 01, 28 February 2009 (2009-02-28), pages 44 - 49 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111090573A (zh) * 2020-03-24 2020-05-01 中国计量大学 基于区块链的研发日志管理方法、装置和电子设备
CN113448617A (zh) * 2021-08-31 2021-09-28 太平金融科技服务(上海)有限公司深圳分公司 数据对象管理方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
EP3584759A1 (en) 2019-12-25
JP7472359B2 (ja) 2024-04-22
JP2023083473A (ja) 2023-06-15
US11327745B2 (en) 2022-05-10
EP3584759B1 (en) 2024-05-01
US20190384594A1 (en) 2019-12-19

Similar Documents

Publication Publication Date Title
CN110619235A (zh) 管理方法、管理装置及记录介质
JP5531819B2 (ja) 管理装置,ライセンス管理サーバ,電子機器,電子機器管理システム,管理方法,プログラム,および記録媒体
CN103530563B (zh) 用于更新经授权软件的系统和方法
RU2560784C2 (ru) Модель взаимодействия для переноса состояний и данных
CN103124973B (zh) 证明引导过程期间交互式组件的使用
US11861360B2 (en) Management method, management apparatus, and program
US20080208754A1 (en) Method for detecting duplicated instances of a software license
US8984296B1 (en) Device driver self authentication method and system
JP2011060144A (ja) ライセンス導入支援装置、ライセンス導入支援方法、及びライセンス導入支援プログラム
JP2010211784A (ja) ライセンス管理装置、機器、ライセンス管理方法、プログラム、及びデータ構造
EP2302550A2 (en) System, method and computer-readable storage medium for managing licenses of multi-function peripherals
KR100991479B1 (ko) 컴퓨터 자원 검증 방법 및 컴퓨터 자원 검증 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
CN103098065A (zh) 许可安装支持系统、许可安装支持方法
CN114096966A (zh) 可扩展的、安全的、高效的和适应性强的分布式数字分类账交易网络
CN111492355A (zh) 用于控制和/或监控装置的方法和控制系统
JPWO2008146408A1 (ja) ライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置
JP2013239098A (ja) 情報処理システム、情報処理装置、及び情報処理プログラム
CN101663666B (zh) 二进制码验证服务
JP7303653B2 (ja) 管理方法、管理装置、及び、プログラム
JP7316812B2 (ja) 管理方法、管理装置、及び、プログラム
JP2008134819A (ja) 情報処理システムおよび、電子許可情報発行装置、電子情報利用装置、権利発行装置、電子許可情報発行プログラム、電子情報利用プログラム、権利発行プログラム
US9336361B2 (en) Feature license-related repair/replacement processes and credit handling
EP3035223A1 (en) Method and control system for controlling an execution of a software application on an execution platform
JP2005084989A (ja) ソフトウェア改ざん検出システム、方法及びプログラム
US8171532B2 (en) Management apparatus, management method and recording medium storing program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination