專利名稱::公開密鑰證書提供裝置的制作方法
技術領域:
:本發明涉及提供公開密鑰證書的提供裝置。
背景技術:
:由于IPv6的問世,開始考慮以往不考慮連接到網絡的裝置連接到網絡的情況。例如,可直接連接到網絡的面向終端用戶的數碼相機。在對應IPv6的個人電腦和工作站的情況下,在與網絡連接的接口中通常使用以太網(R),以其持有的IEEEidentifier(MAC地址)為基礎構成IPv6地址。在IPv6地址中,如后面說明那樣存在鏈路本地地址,站點本地地址(可聚合),全球地址三種。它們的細節和構成方法等的地址體系,在RFC2373“IPVersion6AddressingArchitecture”,RFC2374“AnIPv6AggregatableGlobalUnicastAddressFormat”,RFC2375“IPv6MulticastAddressAssignment”,RFC2450“ProposedTLAandNLAAssignmentRule”,RFC2461“NeighborDiscoveryforIPVersion6(IPv6)”,RFC2462“IPv6StatelessAddressAutoconfiguration”,等中有所描述。可是,當如IEEEidentifier(MAC地址)那樣固定地使用與硬件1對1進行對應的信息時,將其看作與裝置或者該裝置的用戶1對1進行對應的信息,通過監視使用該地址的通信來侵害保密的可能性很大。對于此課題,在RFC3041“PrivacyExtensionsforStatelessAddressAutoconfigurationinIPv6”等中提案有生成隨機的IPv6地址(正確地說是接口ID)的方法。還描述有,在已經使用所生成的隨機值的情況下,對其進行檢測,計算/生成另外的隨機值,決定唯一的隨機值的協議(的擴展)。在裝置使用利用上述那樣的解決方法生成了隨機的IPv6地址的情況下,考慮使用IPsec進行保密通信。IPsec是因特網上的兩個裝置共享其他任何人都不知道的秘密數據,基于該秘密數據進行加密和認證的協議,在通信時需要安全地共享秘密數據和相互的IPv6地址等。秘密數據和相互的IPv6地址等的數據稱作SA(SecurityAssociation)。安全地共享SA的協議稱為IKE(InternetKeyExchange),在RFC2409“TheInternetKeyExchange(IKE)”中進行了規定。這里,所說安全地共享SA的意思是,僅與有意圖的對方可靠地共享SA,需要可靠地認證對方。在IKE中規定有,1)使用pre-sharedkey的方法,2)使用數字簽名的方法,3)利用公開密鑰密碼的加密方法,4)利用公開密鑰密碼的加密的修訂模式的方法,共計4個認證方法。不過,當考慮實現保密保護(不賦予明確身份的信息)的情況時,例如在用戶進行與購物站點的IPsec通信這樣的情況下,如果在購物站點的立場上進行考慮,則由于與預先不定的不確定多數的通信對方在IPsec通信前共享pre-sharedkey在現實中是不可能的,故使用pre-sharedkey的方法不能使用。在其他的方法的情況下,如果可以可靠地獲得對數字簽名或者公開密鑰的使用所必須的信息(多數情況是公開密鑰),則可以在與不確定多數的通信對方之間執行IKE。為此認為最有希望的是稱為PKI(Public-keyInfrastructure)的環境·結構,其中起到中心作用的是公開密鑰證書。公開密鑰證書是可信賴的第三方確認實體(進行通信的主體,計算機和人)和該實體的公開密鑰的對應關系,為了保證它,對實體的ID信息和公開密鑰的組合可信賴的第三方發放的數字簽名。可信賴的第三方稱為CA(CertificationAuthority),用于確認CA的數字簽名的合法性的公開密鑰,一般廣泛地為公眾所知。但是,在現在所運用的公開密鑰證書中,由于包含表示其所有者(Subject)的ID信息,例如,FQDN(FullyQualifiedDomainName),故原封不動就不能實現保密保護。還考慮在現在所運用的公開密鑰證書中不包含其所有者的ID信息的方法,稱為匿名公開密鑰證書。但是,在匿名公開密鑰證書中也存在與上述的IEEEidentifier(MAC地址)相同的課題。也就是,由于只要連續使用相同的匿名公開密鑰證書,就可以聯系多個(基于公開密鑰證書的IPsec等的)通信,在萬一再次明確匿名公開密鑰證書和其所有者的對應關系時,就關系到保密會被侵害,故保密保護的程度還是弱。對于上面的課題,考慮例如,如果在與不同的通信對方進行通信時可以使用不同的IPv6地址以及匿名公開密鑰證書,就能夠實現強有力的保密保護。稱它們為一次性IPv6地址和一次性匿名公開密鑰證書。作為一次性使用的間隔,考慮每當通信對方改變就使用新的一次性IPv6地址,或者對每個分組進行變化等若干方法。但是,雖然關于一次性IPv6地址,上述的RFC3041“PrivacyExtensionsforStatelessAddressAutoconfigurationinIPv6”為公眾所知,但對可進行IPv6通信的裝置(在下面,表示為IPv6對應裝置)有效可靠地發放一次性匿名公開密鑰證書的方法卻不為公眾所知。進而,還存在下面的課題。即,在不知道通信對方的ID信息的情況下,通信對方的識別就只能用IP地址進行。但是,由于例如在以太網(R)的LAN上收發的分組可被該LAN上的所有節點訪問,故也會有本來應該是實體A和實體B進行通信,卻被在與A相同的LAN上持有惡意的C冒充成A的情況。也就是,為了在A和B之間進行基于一次性匿名公開密鑰證書的IPsec通信,通過在A的公開密鑰證書發送到B時,將A的公開密鑰證書頂替為C的,C就可以冒充成A了。如果對DNS(DomainNameSystem)服務器和路由器施加DoS(DenialofServices)攻擊,以使其中假DMS服務器和路由器給予假信息,就不限于LAN可以在更寬范圍內進行冒充。如果判明通信對方的ID,通過對其進行確認就能夠對付,但在上述所示那樣的匿名性高的狀況中,防止這種攻擊的方法迄今還不為公眾所知。
發明內容本發明的目的在于,實現一次性IPv6地址和包含它的一次性匿名公開密鑰證書。本發明的另一目的在于,減輕用于生成匿名公開密鑰的主機的計算負荷。本發明的另一目的在于,有效地實現,保密保護的程度高并可低成本實現的,執行時的負荷小的一次性匿名公開密鑰證書。本發明的另一目的在于,一邊實現強有力的保密保護,且防止冒充,一邊進行利用IKE的IPsec通信。本發明的另一目的在于,使公開密鑰證書發放方可以容易地確認IPv6對應裝置使用的IPv6地址的唯一性,然后可以發放公開密鑰證書。本發明的另一目的在于,有效且可靠地發放在證明對象中包含了IPv6地址的一次性匿名公開密鑰證書,也就是沒有差錯地很快地對發放對象進行發放。本發明的另一目的在于,利用證明對象中包含了IPv6地址的一次性匿名公開密鑰證書,進行IKE以及IPsec通信。本發明的另一目的在于,可有效地實現包含隨機的IPv6地址的,每次使用不同的匿名公開密鑰證書的IPsec通信,能夠實現強有力的保密保護,且防止冒充。另外,本發明的其他的目的,從下面的實施例的說明將會明了。圖1是第一實施形式中的匿名公開密鑰證書發放協議(以太網(R)LAN的情況)的圖。圖2是以太網(R)LAN的模式圖。圖3是節點的結構圖。圖4是以太網(R)的MAC地址的結構圖。圖5是接口ID的結構圖。圖6是臨時鏈路本地地址的結構圖。圖7是某臨時鏈路本地地址的請求節點多播地址的結構圖。圖8是說明直到主機結束DAD的動作的流程圖。圖9是說明直到主機結束地址自動設定的動作的流程圖。圖10是說明直到主機用DHCP取得地址的動作的流程圖。圖11是直到主機進行地址自動設定,接收匿名公開密鑰證書的動作流程圖。圖12是直到主機用DHCP接收地址和匿名公開密鑰證書的動作流程圖。圖13是第三實施形式中的匿名公開密鑰證書發放協議(PPP的情況)的圖。圖14是撥號/ADSL連接的模式圖。圖15是第二實施形式中的匿名公開密鑰證書發放協議(以太網LAN(R)的情況)的圖。圖16是匿名公開密鑰證書發放協議的一般形式的圖。圖17是直到主機取得證書的動作流程圖。具體實施例方式(第一實施形式)在本實施形式中,說明主機經由以太網(R)的LAN與因特網進行連接的情況。開始說明現狀,然后說明本實施形式。圖2模式表示本發送所應用的連接環境(主機經由以太網(R)的LAN與因特網進行連接的環境)。圖2表示在LAN中所連接的主機204、205、206經由缺省網關202對因特網201進行訪問的環境。在本實施中,設各主機用鏈路207進行連接,鏈路207具體來講是設為以太網(R)。所說的鏈路是連接在其中的裝置能夠通過它進行通信的設備或介質,接到IP層的下側。在鏈路中除了以太網(R)以往還有PPP鏈路、X.25、幀中繼、ATM網絡。在鏈路中所連接的IPv6對應裝置稱為節點。節點的內部結構的典型例子如圖3所示。在節點中,有路由器和主機,路由器傳送沒有自身目的地的分組,主機不傳送。如從圖3可知那樣,節點300是具有網絡·接口301、302、CPU303、ROM304、RAM305、HD(硬盤)306、電源307、鍵盤/定位設備的接口308、監視器的接口309以及總線310的計算機。相對于路由器持有網絡·接口301、302,主機在大多數情況下是持有一個網絡·接口301。主機204、205,由網絡·接口301,通過鏈路207與在鏈路207中所連接的其他節點進行通信,或者,進而通過網關202與因特網201上的站點進行通信。缺省網關202,由網絡接口301與在鏈路207中所連接的其他節點進行通信,同時由網絡·接口302,通過因特網201進行通信。根據節點的不同也有不持有HD的情況。此外下面的處理內容(步驟),作為裝置或者程序來實現,由具有該裝置的節點執行,或者由在ROM304或者HD306中保存了的該程序的節點執行。例如,在作為程序來實現的情況下,進行下面這樣的動作,由作為計算機的CPU303讀入該程序,根據需要一邊作為用于計算RAM305的空間進行利用,一邊通過總線310將地址分配給接口301。這里,如節點300將地址分配給接口這樣,來說明處理的本質。簡單說明在本實施形式的以太網(R)LAN環境中各主機取得IPv6全球地址的前綴和缺省網關202的地址的協議的結構,接著說明應用了本發明的具體實施形式。圖8中示出連接于圖2的鏈路207的節點300,在接通電源或者再引導的情況下進行的動作的流程圖。此動作被稱為DAD(DuplicateAddressDetection)。在下面,按照圖8的流程說明直到節點300結束DAD的處理內容。在步驟S801中當接通電源或者再引導后,首先從被分配給接口301的以太網(R)的MAC地址參照圖4生成接口ID,將其設為臨時鏈路本地地址(參照圖6)(步驟S802)。接著,為了判斷在鏈路上該臨時鏈路本地地址是否唯一,節點300(主機)進行下面的處理。最初進行接口301的初始設定。即,將全節點多播地址(FF02∷1)和該臨時鏈路本地地址的請求節點多播地址分配給接口301(參照圖7)。此結果就是,該接口301在發現全節點多播地址目的地的分組或者該臨時鏈路本地地址的請求節點多播地址目的地的分組時,將其作為自身的接口目的地的分組接收。通過分配前者(全節點多播地址),接收來自已經使用該臨時鏈路本地地址的其他的節點的數據就成為可能。另外,通過分配后者(該臨時鏈路本地地址的請求節點多播地址),檢測同時欲使用相同的臨時鏈路本地地址的其他節點的存在就成為可能。某臨時鏈路本地地址的請求節點多播地址是說,如RFC2461第91頁中所定義那樣,是將臨時鏈路本地地址的低位24位附加到前綴FF0200001FF00∷/104的數據,是鏈路本地范圍多播地址。在圖6和圖7中表示它們的關系。上面的地址分配是圖8的步驟S803。接著,生成臨近請求消息。在臨近請求消息的目標地址中設定判斷對象的臨時鏈路本地地址,在IP發送方地址中設定未指定地址(128位全部為0),在IP目的地地址中設定判斷對象的臨時鏈路本地地址的請求節點多播地址。以RetransTimer毫秒間隔將此臨近請求消息發送給DupAddrDetectTransmits個以太網(R)(鏈路)207。圖8的步驟S804就是此處理。接收到臨近請求消息的節點,如果該發送方地址是未指定地址,就判斷為該消息是來自進行DAD的節點的數據。在多個節點同時以相同的地址作為對象進行DAD的情況下,由于分配了該臨時鏈路本地地址的請求節點多播地址的多個節點,接收在目標地址中包含的相同地址的多個臨近請求消息(接收自身發送的臨近請求消息,同時接收以該地址作為對象進行DAD的其他節點發送的臨近請求消息),故可知重復。在該情況下哪個節點都不使用該地址。此外,如果所接收的臨近請求消息,是自身發送的(因為回送多播的分組),就不表示另外存在使用其或者欲使用的節點。在除自身所發送的臨近請求消息以外,接收到在目標地址中包含的相同地址的臨近請求消息的情況下,就判斷為多個節點同時以相同的地址作為對象進行DAD。另一方面,如果接收到臨近請求消息的節點,已經使用包含在該消息的目標地址的地址,將目標地址中設定了該臨時鏈路本地地址的多播臨近廣告返回給全節點多播地址。從而,發送了臨近請求消息的節點接收全節點多播地址目的地的多播臨近廣告,在該目標地址為(判斷對象的)臨時地址的情況下(圖8的S805步驟的“是”的情況),可知判斷對象的臨時地址唯一(也就是不重復)。上面的DAD的結果為,如果確認判斷對象的臨時鏈路本地地址在鏈路上唯一(圖8的S805步驟的“否”的情況),就將該地址作為鏈路本地地址分配給接口301。這就是圖8的步驟S806。通過以上處理DAD結束。上面所說明的圖8的動作,作為在圖2的鏈路207中所連接的節點的缺省網關202、DHCP服務器203、主機204、主機205、主機206的各自,可以對收納鏈路207的網絡·接口301執行。當圖2的主機,例如主機206將鏈路本地地址分配給接口301時,接著試著從缺省網關202獲得為決定站點本地地址和全球地址所必須的信息(稱為路由器廣告)。此動作如圖9所示。由于缺省網關202通常稱為路由器故在下面記為路由器202。路由器202由管理員進行必要的設定,定期地將路由器廣告發送給鏈路207,在主機206想很快獲得路由器廣告的情況下,主機206將稱為路由器請求的數據發送給路由器202。由于主機206在分配了鏈路本地地址緊后不直到路由器202的存在,所以實際上路由器請求作為對應鏈路207上的所有路由器的多播進行發送。圖9的步驟S901表示此處理。接收到路由器請求的路由器202發送路由器廣告。如圖9的步驟S902的“是”情況所示那樣,接收到僅指定無狀態地址自動配置的路由器廣告消息的主機206,確認該接收到的消息中的前綴的有效性(沒有已經由該裝置進行等),將在它(它們)中附加適當的接口ID生成的地址,作為站點本地地址或者全球地址分配給接口301。圖9的步驟S903就是此處理。如圖9的步驟S902的“否”情況所示那樣,在主機206沒有接收到僅指定無狀態地址自動配置的路由器廣告的情況下,分成下面的兩種情況。接收到指定無狀態地址自動配置和無狀態地址自動配置兩者的路由器廣告的情況(步驟S904的“是”情況),和沒有接收到任何路由器廣告的情況(步驟S904的“否”情況)。在后者的情況下,僅執行無狀態地址自動配置,即DHCPv6。這是步驟S906,圖10中示出其細節。DHCP服務器203,由管理員進行必要的設定。具體來講就是,作為節點將自身的鏈路本地地址分配給網絡·接口301,作為DHCP服務器設定為進行動作所必須的站點本地地址或者全球地址用的前綴等。在圖10的步驟S1001中,主機206將DHCP請求消息發送給DHCP服務器。由于主機206不知道DHCP服務器203存在于何處,故作為對于DHCP服務器203的多播發送給鏈路207。在與主機206所連接的鏈路207不同的鏈路(沒有圖示)中有DHCP服務器203的情況下,DHCP請求消息,實際上由DHCP網絡中繼器(沒有圖示)所中繼到達DHCP服務器203。接收到DHCP請求消息的DHCP服務器203作為對于其的返答將DHCP廣告消息返回給主機206。這樣(在其他鏈路的情況下由DHCP網絡中繼器所中繼)到達主機。這就是步驟S1002。在此時刻主機20知道DHCP服務器203的地址。接著在步驟S1003中主機206將DHCP要求消息發送給DHCP服務器203。當DHCP服務器203接收DHCP要求消息時,將DHCP響應消息發送給主機206。在步驟S1004中接收到DHCP響應消息的主機206,然后決定站點本地地址或者全球地址,為了確認該地址中的接口ID是否重復,進行對DAD處理所需要的處理。也就是,與步驟S803同樣地,將多播地址等設定到接口301。這就是步驟S1005。接著,在步驟S1006中發送與步驟S804同樣的臨近請求消息,在步驟S1007中判斷是否接收到臨近廣告消息。在接收到的情況下,由于該地址重復,為了從DHCP服務器203接收其他的地址返回到步驟S1003,反復相同的處理。主機206,在圖10的步驟S1007中沒有接收到臨近廣告消息的情況下,由于該地址不重復,故在步驟S1008中將從DHCP響應消息決定的站點本地地址或者全球地址分配給接口301。通過上面的處理圖9的步驟S906結束。在步驟S904中在沒有接收到任何路由器廣告的情況下,以次正常結束。在步驟S904中接收到指定無狀態地址自動配置和無狀態地址自動配置兩者的路由器廣告的情況下,在步驟S905中進行無狀態地址自動配置和無狀態地址自動配置兩者。處理內容與步驟S903和S906相同。如上面那樣,作為接口持有以太網(R)207的主機206,用任意的組合應用無狀態地址自動配置和無狀態地址自動配置(DHCPv6),可以自動設定鏈路本地地址、站點本地地址,全球地址、缺省網關等。在上面的協議中,通過對接口ID使用隨機的值,將該值作為對象進行DAD,確認鏈路207中的唯一性,就可利用與從網關202或者DHCP服務器203得到的全球地址的前綴組合一次性使用的IPv6全球地址。細節在RFC3041“PrivacyExtensionsforStatelessAddressAutoconfigurationinIPv6”中有所描述。接著說明本發明的實施形式。說明對上述的動作(協議)進行擴展,可以利用不使用的匿名公開密鑰證書的協議。首先說明匿名公開密鑰證書的例子,接著說明有效地對其進行發放用的協議。匿名公開密鑰證書,學術上,在KazuomiOishi、MasahiroMambo、EijiOkamato、“AnonymousPublicKeyCertificatesandtheirApplication”IEICETransactiononFundamentalsofElectronics、CommunicationandComputerSciences、E81-A、1、pp.56-64、1998中提案出其概念和具體的實現方法,其基本的實現方法也作為USA的專利6、154、851被公開。在這些方式中,證書用戶的匿名性在計算量上得以維持。作為提供更健壯的匿名性的方式,具有信息量的匿名性的匿名公開密鑰證書的實現方法在KazuomiOishi、“Uncondtionallyanonymouspublickeycertificates”The2000SymposiumonCryptographyandInformationSecurity、SCIS2000-C32、2000中被公開。在本發明中,可以利用在上述的論文KazuomiOishi、MasahiroMambo、EijiOkamato、“AnonymousPublicKeyCertificatesandtheirApplication”中所記載任意的方式。如果允許效率低劣,也可利用上述論文中的Scheme1、Scheme2、Scheme3,這些也包含在本發明中。在本實施形式中采納使用具有計算量的匿名性的匿名公開密鑰證書方式的實施形式。細節可參照上述的文獻,在定義·導入說明安排上需要的標記等以后對本實施形式的協議進行說明。發放匿名公開密鑰證書的實體CA,作為公共參數確定大的素數p和q。q能將p-1除盡。確定階次q的生成元g和哈希函數H。生成秘密的隨機數s_ca(1以上q以下),計算v_ca=g^(s_ca)modp。這里,A=(B)^(C)modD表示,對整數A、B、C、D,用B乘以C的值除以D,設其余數為A的計算。實體CA公開p、q、g、H以及v_ca。另一方面,利用匿名公開密鑰證書的實體i,生成秘密的隨機數s_i(1以上q以下),計算v_i=g^(s_i)modp。將s_ca和s_i稱為秘密密鑰,將v_ca和v_i(以及公開的參數)稱為公開密鑰,進行管理以使秘密密鑰不為自身以外的任何人所知。實體i在開始利用匿名公開密鑰證書時,將自身的實體名(用戶名)、參數、公開密鑰v_i登錄到實體CA。實體CA根據需要用物理方法等確認實體i的身份,存儲所提示的實體名(用戶名)、口令、公開密鑰v_i。在發放匿名公開密鑰證書時,實體CA生成隨機數r(1以上q以下),計算(g′,v_i′)=(g^rmodp,(v_i)^(r)modp)。將上述的公開的參數和此匿名公開密鑰證書的有效期限,以及對于公開密鑰v_ca的公開密鑰證書(后述)等的證書的管理·屬性信息設為X,對包含(g′,v_i′)和X的消息(的哈希值)生成數字簽名。可以使用基于離散對數問題的數字簽名方式,例如Schnorr簽名方式。這里,使用秘密密鑰s_ca。將此數字簽名記為Sig_ca(g′,v_i′,X)。實體CA對實體i發放的匿名公開密鑰證書就是,APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))。接收到匿名公開密鑰證書APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))的發放的實體i,從其中取出(g′,v_i′,X),計算其哈希值(例如,H(g′|v_i|′|X),其中|表示連接),使用公開密鑰v_ca確認Sig_ca(g′,v_i′,X)是否是對于哈希值的正確的數字簽名。另外,也確認=g′^(s_i)modp。如果能夠確認為它們正確,就將g′、v_i′(和公共的參數p)作為公開密鑰,將s_i作為秘密密鑰可以利用基于離散對數問題的公開密鑰密碼和數字簽名。這樣,匿名公開密鑰證書APC_ca(i),在其管理·屬性信息X中包含有效期限,在匿名公開密鑰證書APC_ca(i)中所包含的公開密鑰g′和v_i′為,同一實體i的公開密鑰,是伴隨時間的經過進行變更的公開密鑰。接收到匿名公開密鑰證書APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))的實體,從其中取出(g′,v_i′,X),計算其哈希值,使用公開密鑰v_ca確認Sig_ca(g′,v_i′,X)是否是對于哈希值的正確的數字簽名。如果能夠確認為它們正確,就使用作為公開密鑰的g′、v_i′(和公共的參數p)進行基于離散對數問題的公開密鑰密碼的加密和數字簽名的驗證。此外,公開密鑰v_ca其本身的合法性的確認,如果讓更上級或者更普及的實體CA,例如提供商用的認證服務的VeriSign等提出公開密鑰v_ca,并發放對于公開密鑰v_ca的公開密鑰證書,就能夠使用其進行確認。匿名公開密鑰證書的管理·屬性信息X包含對于公開密鑰v_ca的公開密鑰證書。能夠使用對于此公開密鑰v_ca的公開密鑰證書,確認公開密鑰v_ca其本身的合法性。這就相當于分階層地構筑實體CA,能夠構成適當的PKI(Public-keyInfrastructure)。此外,盡管在上面的說明中,說明了基于乘法群(modp)上的離散對數問題的困難性的簽名方式,但也可以應用基于橢圓曲線上的離散對數問題的困難性的簽名方式,由于該情況可用比乘法群的情況還少的位數的密鑰預期相同程度的安全性,故效率更好。說明將上面的匿名公開密鑰證書方式應用于圖2的環境的情況。將缺省網關202或者DHCP服務器203作為發放匿名公開密鑰證書的實體CA,主機206(或者利用其的用戶)成為利用匿名公開密鑰證書的實體i。或者,也可以設置僅承擔證書發放的專用CA服務器。盡管在下面,說明將缺省網關202作為發放匿名公開密鑰證書的實體CA,在證書中包含隨機的IPv6地址的例子,但也可以將DHCP服務器和專用CA服務器作為發放匿名公開密鑰證書的實體CA,在證書中不包含隨機的IPv6地址。這里,缺省網關202將IPv6的全球地址的前綴提供給主機206。如上述那樣,由于缺省網關202在大多情況下為路由器,故稱為路由器202。路由器202的管理員,確定上述的公開參數p、g等,進行公開。確定作為發放匿名公開密鑰證書的實體CA的公開密鑰v_ca,讓更上級或者更普及的CA(圖2的209),例如提供商用的認證服務的VeriSign等提出,并發放對于公開密鑰v_ca的公開密鑰證書。路由器(gateway)202具有控制分組的傳送的作用,根據管理員的責任進行運用以使在該路由器管轄的子網和外部之間不出入不適當的分組。為將某子網連接到因特網,以該子網的管理員的身份登錄到JPNIC(日本的情況),接受IP地址的分配。從而,子網中的路由器管理責任明確,且在還考慮安全方面之后期待運用和管理上花費成本,故可認為與承擔發放匿名公開密鑰證書的實體CA的功能相稱。在用戶i申請向LAN的訪問時,使用所公開的參數p、g等生成自身的秘密密鑰s_i,計算對應的公開密鑰v_i,將用戶名、口令和公開密鑰v_i對LAN的管理員(路由器202的管理員)提出。LAN的管理員(路由器202的管理員),依照其運用方針進行用戶i的身份確認和參數等的檢查等,許可訪問。管理員,登錄到RAM304或者HD306以便能夠以實體名為基礎檢索對應的公開密鑰v_i。設公開參數p、g等和公開密鑰v_i、特別是秘密密鑰s_i由用戶i進行管理,在主機206中可以安全地進行利用。圖1中表示在進行了上述的準備后所執行的本實施形式的協議。圖1是設利用匿名公開密鑰證書的實體(用戶i使用的IPv6終端)為主機206,設發放匿名公開密鑰證書的CA為路由器202,在它們之間所進行的匿名公開密鑰證書的發放協議。即,將存在于IPv6對應裝置206所處的本地鏈路207內的IPv6對應裝置202作為公開密鑰證書發放方進行運用。由于為了發放匿名公開密鑰證書需要確定實體,故在路由器202和實體(在此情況下為主機206)之間執行某種確定(認證)協議。在本實施形式中,以基于下面那樣的公開密鑰密碼的方式為例進行說明。按照圖1的流程對動作進行說明。主機206在步驟S101中生成證書請求。證書請求,是請求匿名公開密鑰證書的消息,以路由器202能夠理解的形式生成包含請求匿名公開密鑰證書意思和主機206的接口ID的數據。內容是從實體名(用戶名)、口令和序列號進行計算。序列號是,例如將主機206的IPv6鏈路本地地址、缺省網關202的鏈路本地地址和當時的時刻3個連接起來作為一個數據的值。為了防止再送攻擊和冒充,使用秘密密鑰s_i,對將實體名(用戶名)、口令和序列號輸入到哈希函數的值所生成的數字簽名(認證用簽名)(Sig_(hash(實體名,口令,序列號))),包含在證書請求中。接著,主機206,在步驟S102中通過鏈路207將證書請求發送給路由器202。在步驟S103中,路由器202從RAM305或者HD306檢索由在步驟S102中接收到的證書請求中所包含的實體名(通信裝置(主機)206的標識符)所登錄的公開密鑰v_i,并使用其確認認證用簽名的合法性。具體來講,將實體名(用戶名)、口令和序列號作為哈希函數的輸入,求其哈希值,用公開密鑰v_i對認證用簽名是對于其的正確的數字簽名。如果認證成功,就從分配給路由器202的IPv6的全球地址的前綴和主機206的接口ID生成IPv6全球地址,作成包含其生存期(使用期限,例如24小時)等的匿名公開密鑰證書APC_ca(i)。具體來講,就是在上述的APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))中的證書的管理·屬性信息X中包含IPv6全球地址和生存期等。此外,IPv6全球地址的生存期(使用期限)和匿名公開密鑰證書的有效期限未必相同。然后,在步驟S104中路由器202通過鏈路207將由IPv6全球地址的前綴、缺省路由器202的地址和匿名公開密鑰證書APC_ca(i)組成的證書廣告發送給被認證的主機206。在本發明的實施形式中,使用登錄了此證書廣告的公開密鑰進行加密后發送。在步驟S105中主機206從所接收的證書廣告取出前綴附加接口ID,生成IPv6全球地址,同時確認匿名公開密鑰證書APC_ca(i)的合法性。這樣,匿名公開密鑰證書APC_ca(i),在其管理·屬性信息X中包含有效期限,在匿名公開密鑰證書APC_ca(i)中所包含的公開密鑰g′和v_i′為,相同的實體i(主機206)的公開密鑰,是伴隨時間的經過進行變更的公開密鑰。主機206每當通信對方改變,或者每當通話改變,或者對每當通信分組發送,就執行圖1的匿名公開密鑰發放協議,變更將使用的公開密鑰g′和v_i′。在圖11中示出將上面的協議與既存的證書請求和證書廣告的收發協議進行了組合的擴展協議的主機的動作流程圖。主機206,在圖11的步驟S1101中,通過鏈路207發送,包含圖9的步驟S901中所發送的路由器請求消息和圖1的步驟S102中所發送的證書請求兩者的數據的路由器證書請求消息。另外,在步驟S1102中,接收作為包含圖9的步驟S902中所接收的路由器廣告消息和圖1的步驟S104中所接收的證書廣告兩者的數據的路由器證書廣告消息。在通過鏈路207接收到路由器證書廣告消息的情況下,即,在步驟S1102中“是”的情況下,主機206,在步驟S1103中與圖9的步驟S903同樣地將對路由器廣告消息中的前綴附加接口ID生成的地址,作為站點本地地址或者全球地址,分配給接口301,同時進行圖1中的步驟S105,獲得包含公開密鑰g′和v_i′的匿名公開密鑰證書APC_ca(i)。通過上面的協議,就能夠不改變現有的協議的步驟數僅通過增加數據對主機206發放與可一次性使用的IPv6地址對應的一次性匿名公開密鑰證書。此外,在取代路由器202而由DHCP服務器203擔任發放匿名公開密鑰證書的實體CA的職責的情況下,在圖11的步驟S1106中執行與圖1同樣的協議。這里,DHCP服務器203將全球地址的前綴提供給主機206。在此情況下在圖11的步驟S1106中,主機執行無狀態地址自動配置的擴展協議,也就是從DHCP服務器取得地址和證書的協議。在圖12中示出該動作流程圖。與圖10的協議不同的是,步驟S1203和步驟1204兩處。在步驟S1203中,通過鏈路207發送作為包含圖10的步驟S1003中發送的DHCP要求消息和圖1的步驟S102中發送的證書請求相當的數據(CA不是路由器202而是DHCP服務器203這一點不同)的兩者的數據的DHCP證書要求消息。當接收此DHCP證書要求消息時,DHCP服務器203,生成DHCP證書響應消息,通過鏈路207發送所生成的DHCP證書響應消息。這里,DHCP服務器203,如圖1的S103那樣,生成匿名公開密鑰證書APC_ca(i),在DHCP證書響應消息中包含由DHCP服務器203的全球地址的前綴、DHCP服務器203的地址和匿名公開密鑰證書APC_ca(i)組成的證書廣告相當的數據,和圖10的步驟S1004的DHCP響應消息。主機206,在步驟S1204中,接收DHCP證書響應消息。此DHCP證書響應消息是,包含圖10的步驟S1004中接收的DHCP響應消息和圖1的步驟S104中接收的證書廣告相當的數據(CA不是路由器而是DHCP服務器這一點不同)的兩者的數據。從而,從DHCP響應消息決定站點本地地址或者全球地址,同時獲得包含公開密鑰g′和v_i′的匿名公開密鑰證書APC_ca(i)。通過上面的協議,就能夠不改變現有的協議的步驟數僅通過增加數據對主機206發放與可一次性使用的IPv6地址對應的一次性匿名公開密鑰證書。路由器202以及DHCP服務器203的兩者擔任CA的職責的情況,相當于在圖11的步驟S1104中接收到指定無狀態(stateless)和全狀態(stateful)的兩者的路由器證書廣告消息的情況(“是”的情況),通過任意的組合應用上述所示的兩個擴展協議,就能夠自動設定和確定鏈路本地地址、站點本地地址、一次性IPv6全球地址和與其對應的一次性匿名公開密鑰證書、以及缺省網關等。在此情況下,路由器202以及DHCP服務器203相當于提供公開密鑰證書的通信裝置組。主機206每當通信對方改變,或者每當通話改變,或者每當通信分組發送,就執行圖11的用于接收匿名公開密鑰證書的協議,變更將使用的公開密鑰g′和v_i′。此外,盡管對DHCP服務器203將IPv6地址的前綴提供給主機206的實施形式進行了說明,但在提供IPv6地址本身的實施形式中除了取代前綴發送地址這一點和不需要主機生成地址的處理這一點以外其他都可用相同的協議實現。(第二實施形式)在第一實施形式中,缺省網關(路由器)兼CA在對主機進行認證后將包含匿名公開密鑰證書和前綴的證書廣告發送給主機。在本實施形式中,說明前綴的發送和匿名公開密鑰證書的發放相獨立的例子。與第一實施形式同樣地,將缺省網關202或者DHCP服務器203,作為發放匿名公開密鑰證書的實體CA,將主機206(或者利用其的用戶)作為利用匿名公開密鑰證書的實體i。或者,也可以設置僅承擔證書發放的專用CA服務器。盡管在下面,說明將缺省網關202作為發放匿名公開密鑰證書的實體CA,在證書中包含隨機的IPv6地址的例子,但也可以將DHCP服務器和專用CA服務器作為發放匿名公開密鑰證書的實體CA,在證書中不包含隨機的IPv6地址。這里,缺省網關202,將IPv6的全球地址的前綴提供給主機206。如上述那樣,由于缺省網關202在大多情況下為路由器,故稱為路由器202。路由器202的管理員,確定上述的公開參數p、g等,進行公開。確定作為發放匿名公開密鑰證書的實體CA的公開密鑰v_ca,讓更上級或者更普及的CA(圖2的209),例如提供商用的認證服務的VeriSign等提出,并發放對于公開密鑰v_ca的公開密鑰證書。在用戶i申請向LAN的訪問時,使用所公開的參數p、g等生成自身的秘密密鑰s_i,計算對應的公開密鑰v_i,將用戶名、口令和公開密鑰v_i對LAN的管理員(路由器202的管理員)提出。LAN的管理員(路由器202的管理員),依照其運用方針進行用戶i的身份確認和參數等的檢查等,許可訪問。管理員,登錄到RAM304或者HD306以便能夠以實體名為基礎檢索對應的公開密鑰v_i。設公開參數p、g等和公開密鑰v_i、特別是秘密密鑰s_i由用戶i進行管理,在主機206中可以安全地進行利用。在圖15中表示進行了上面的準備后所執行的,本實施形式的協議。圖15是表示設利用匿名公開密鑰證書的實體(用戶i使用的IPv6終端)為主機206,設作為提供前綴的IPv6終端,且發放匿名公開密鑰證書的CA為缺省網關202,在它們之間所進行的匿名公開密鑰證書的發放協議的動作流程圖。即,將存在于IPv6對應裝置206所處的本地鏈路207內的IPv6對應裝置202作為公開密鑰證書發放方進行運用。由于為了發放匿名公開密鑰證書需要確定實體,故在路由器202和實體(在此情況下為主機206)之間執行某種確定(認證)協議。在本實施形式中,以基于下面那樣的公開密鑰密碼的方式為例進行說明。一邊參照圖15一邊對動作進行說明。在主機206被接通電源或者重新啟動的情況下,從網絡·接口(圖3的301)的MAC地址生成接口ID。另外,主機206,例如通過RFC3041的算法生成隨機的接口ID。然后,進行將預定的前綴附加于從MAC地址生成的接口ID的鏈路本地地址的生成等,將路由器請求(RS)發送給路由器(步驟S1501)。RS如上述那樣是鏈路上的所有路由器目的地的多播。如果路由器202接收到RS,就發送路由器廣告(RA)(步驟S1502)。接收到RA的主機206,抽取包含在RA中的前綴,從由MAC地址所生成的接口ID和所抽取的前綴,生成全球地址(稱為公開地址)。另外,從隨機的接口ID和所抽取的前綴,生成一次性IPv6地址(稱為臨時地址)。然后,進行公開地址和臨時地址的重復檢測DAD(DuplicateAddressDetection),確認鏈路中的地址的唯一性,將這些地址分配給接口(步驟S1503)。接著,主機206生成證書請求(步驟S1504)。證書請求,是請求匿名公開密鑰證書的消息,以路由器202能夠理解的形式生成包含請求匿名公開密鑰證書意思的數據。例如,在RFC2986,“PKCS#10CertificationRequestSyntaxSpecificationVersion1.7”中所規定的PKCS#10,和RFC2511,“InternetX.509CertificateRequestMessageFormat”等規定的那些形式。形式的詳細說明省略,設此證書請求為由證書請求消息和對于其的(主機的)簽名組成的數據。接著,主機206,通過鏈路207將證書請求發送給路由器202(步驟S1505)。此外,由于在此時刻主機206知道路由器202的(單播)地址故可以進行單播。路由器202從RAM305或者HD306檢索由在步驟S1505中接收到的證書請求中所包含的實體名(主機206的標識符或者利用主機206的用戶的名稱)所登錄的公開密鑰v_i,并使用其確認簽名的合法性。如果確認成功,就生成主機206的匿名公開密鑰證書APC_ca(i)。具體來講,就是在上述的APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))中的證書的管理·屬性信息X中包含IPv6全球地址和生存期等(步驟S1506)。然后,路由器202通過鏈路207將包含匿名公開密鑰證書APC_ca(i)的證書廣告發送給被認證的主機206(步驟S1507)。在本發明的實施形式中,使用登錄了此證書廣告的公開密鑰進行加密后發送。此時,可以作為臨時地址目的地的單播進行發送。主機206從接收到的證書廣告確認匿名公開密鑰證書APC_ca(i)的合法性(步驟S1508)。在圖17中示出將上面的協議與既存的無狀態地址自動配置和無狀態地址自動配置進行了組合的擴展協議的主機的動作流程圖。在主機206被接通電源或者重新啟動的情況下,從網絡·接口(圖3的301)的MAC地址生成接口ID。另外,主機206,例如通過RFC3041的算法生成隨機的接口ID。然后,進行將預定的前綴附加于從MAC地址生成的接口ID的鏈路本地地址的生成等,將路由器請求(RS)發送給路由器(步驟S1701)。RS如上述那樣是鏈路上的所有路由器目的地的多播。如步驟S1702的“是”的情況所示那樣,接收到僅指定無狀態地址自動配置的路由器廣告消息(RA)的主機206,抽取包含在RA中的前綴,從由MAC地址所生成的接口ID和所抽取的前綴,生成全球地址(稱為公開地址)。另外,從隨機的接口ID和所抽取的前綴,生成一次性IPv6地址(稱為臨時地址)。然后,進行公開地址和臨時地址的重復檢測DAD(DuplicateAddressDetection),確認鏈路中的地址的唯一性,將這些地址分配給接口(步驟S1703)。接著,主機206執行證書請求和證書發放的協議(步驟S1707)。即,主機206,如圖15的步驟S1504、S1505中所示那樣,生成證書請求,發送給路由器202。主機206,從路由器206接收證書廣告,確認在其中所包含的匿名公開密鑰證書APC_ca(i)的合法性。此外,在沒有接收到任何路由器廣告的情況下(步驟S1704的“否”的情況下),執行無狀態地址自動配置,即僅執行DHCPv6。這就是步驟S1706,其細節與圖10的協議相同。當在步驟S1704中接收到指定無狀態地址自動配置和無狀態地址自動配置兩者的路由器廣告消息的情況下,在步驟S1705中進行無狀態地址自動配置和無狀態地址自動配置兩者。處理內容與步驟S1703和S1706相同。盡管在上面的說明中,缺省網關202(路由器)兼任CA,擔一般并不限于缺省網關(路由器)和CA為同一IPv6裝置。在圖16中示出缺省網關(路由器)和CA為不同的IPv6裝置的情況的動作流程。CA的管理員,確定上述的公開參數p、g等,進行公開。確定作為發放匿名公開密鑰證書的實體CA的公開密鑰v_ca,讓更上級或者更普及的CA(圖2的209),例如提供商用的認證服務的VeriSign等提出,并發放對于公開密鑰v_ca的公開密鑰證書。在用戶i申請向LAN的訪問時,使用所公開的參數p、g等生成自身的秘密密鑰s_i,計算對應的公開密鑰v_i,將用戶名、口令和公開密鑰v_i對CA的管理員提出。CA的管理員,依照其運用方針進行用戶i的身份確認和參數等的檢查等,許可訪問。管理員,登錄到RAM304或者HD306以便能夠以實體名為基礎檢索對應的公開密鑰v_i。設公開參數p、g等和公開密鑰v_i、特別是秘密密鑰s_i由用戶i進行管理,在主機206中可以安全地進行利用。此外,缺省網關(路由器)202的管理員和CA的管理員可以是相同,也可以不相同。圖16設,缺省網關202(路由器)和CA是不同的IPv6裝置,并在缺省網關202中設定CA的IPv6地址。在主機206被接通電源或者重新啟動的情況下,從網絡·接口(圖3的301)的MAC地址生成接口ID。另外,主機206,例如通過RFC3041的算法生成隨機的接口ID。如上述那樣進行鏈路本地地址的生成等,將路由器請求擴展(RS擴展)發送給路由器(步驟S1601)。RS擴展是將請求CA的地址意思的消息追加到路由器請求的信息,與上述的CA相同鏈路上的所有路由器目的地的多播。如果路由器202接收到RS擴展,就發送路由器廣告擴展(RA擴展)(步驟S1602)。RA擴展是將CA的地址追加到路由器廣告的信息。接收到RA擴展的主機206,抽取包含在RA中的前綴,從由MAC地址所生成的接口ID和前綴,生成全球地址(稱為公開地址)。另外,從隨機的接口ID和前綴,生成一次性IPv6地址(稱為臨時地址)。然后,進行公開地址和臨時地址的重復檢測DAD(DuplicateAddressDetection),確認鏈路中的地址的唯一性,將這些地址分配給接口。另外,從RA擴展抽取CA的地址(步驟S1603)。接著,主機206生成證書請求(步驟S1604),將證書請求發送給CA(步驟S1605)。CA從RAM305或者HD306檢索由在步驟S1605中接收到的證書請求中所包含的實體名(通信裝置(主機)206的標識符)所登錄的公開密鑰v_i,并使用其確認簽名的合法性。如果確認成功,就生成主機206的匿名公開密鑰證書APC_ca(i)。具體來講,就是在上述的APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))中的證書的管理·屬性信息X中包含IPv6全球地址和生存期等(步驟S1606)。然后,CA將包含匿名公開密鑰證書APC_ca(i)的證書廣告發送給主機206(步驟S1607)。在本發明的實施形式中,使用登錄了此證書廣告的公開密鑰進行加密后發送。主機206從接收到的證書廣告確認匿名公開密鑰證書APC_ca(i)的合法性(步驟S1608)。雖然將上面的協議與既存的無狀態地址自動配置和無狀態地址自動配置進行了組合的擴展協議的主機的動作流程圖,與圖17大致相同,但下面兩點不同。即,在步驟S1701中取代路由器請求消息,發送路由器請求擴展消息。另外,在步驟S1707中作為證書請求和證書發放的協議,執行圖16所示的協議。(第三實施形式)在本實施形式中,說明主機以撥號或者ADSL這樣的方式與因特網進行連接的實施形式。開始說明現狀,然后說明本發明的實施形式。圖14模式表示了應用本發明的連接環境。圖14表示主機1406經由PSTN(PublicSwitchedTelephoneNetwork)對ISP(InternetServiceProvider)提供的因特網1401進行訪問的環境。在本實施形式中設以PPP鏈路進行連接。在圖14中,ISP的PPPpeer1402是節點,使用modem1403通過PSTN1404接受來自主機1406的PPP連接的請求。主機1406使用modem1405以PPP連接對PPPpeer1402進行訪問。主機1406的結構與圖3相同,通過網絡·接口301連接調制解調器1405。另外,PPPpeer1402的結構也與圖3相同,通過網絡·接口301連接調制解調器1403,通過網絡·接口302與因特網連接。PPPpeer1402,如圖14所示那樣,作為缺省網關模塊14021、DHCP模塊14022、和鑒別模塊14023發揮功能。在主機1406和PPPpeer1402進行通信的情況下,主機1406通過調制解調器1405進行通信,PPPpeer1402通過調制解調器1403進行通信。盡管在本實施形式中,以modem和PSTN為例采納并進行說明,即便是TA(TermianlAdapter)和ISDN(IntegratedServiceDigitalNetwork),PHS通信適配器和PHS通信網,專用線連接裝置和專用線等的其他通信形態,只有是能夠建立PPP連接的環境,其本質上都是相同的。PPP連接的細節,在RFC1661“ThePoint-to-PointProtocol(PPP)”中有所描述。主機1406通過調制解調器1405、PSTN1404、調制解調器1403將PPP連接的請求傳送給PPPpeer1402。PPPpeer1402接受該連接請求,鑒別模塊14023進行主機的認證。典型的認證方式是基于用戶名和口令的認證協議CHAP,細節在RFC1994“PPPChallengeHandshakeAuthenticationProtocol”中有所描述。如果認證結束,DHCP模塊14022就按照其設定將IPv6全球地址的前綴和缺省網關的IPv6地址等傳送給主機1406。DHCP模塊14022是,由ISP的管理員進行按照其運用方針的設定。此外,在圖14中為了簡化說明,設缺省網關、DHCP服務器和鑒別服務器分別為缺省網關模塊14021、DHCP模塊14022、和鑒別模塊14023并存在于PPPpeer內部。但實際上也有分別作為不同的節點存在于鏈路1407上的情況。不管是哪一個實施形式,由于只要這些模塊或者節點在ISP的管理員的管理下安全地得以運用即可,所以在下面,對通過圖14的實施形式建立了主機1406和PPPpeer1402之間的PPP鏈路進行說明。如果主機1406從DHCP模塊14022接收到IPv6全球地址的前綴和缺省網關的IPv6地址等,就將IPv6全球地址的前綴和自身的(用RFC3041等中的方法所生成)隨機接口ID進行組合,生成隨機的IPv6全球地址,對其在鏈路中不重復進行確認后,將其分配給接口301,并存儲缺省網關的IPv6地址。通過上面的動作,主機1406使用一次性IPv6地址能夠與因特網的任意的對方進行通信。接著,說明本發明的實施形式。說明對上述的動作(協議)進行了擴展,可以利用一次性匿名公開密鑰證書的協議。下面,說明將匿名公開密鑰證書方式應用于圖14的環境的情況。PPPpeer1402為發放匿名公開密鑰證書的CA,主機1406(或者利用其的用戶)為利用匿名公開密鑰證書的實體i。盡管在下面,對在證書中包含隨機的IPv6地址的實施形式進行說明,但也可以不包含隨機的IPv6地址。ISP決定上述的公開參數p、g等,進行公開。決定自身的公開密鑰v_ca對更上級或者更普及的CA(圖14的1408),例如,提供商用認證服務的VeriSign等提出,請求發放對于v_ca的公開密鑰證書。在用戶i申請加入到ISP時,使用ISP公開的參數p、g等,生成自身的秘密密鑰s_i,計算對應的公開密鑰v_i,將用戶名、口令和公開密鑰v_i對ISP提出。ISP的管理員(PPPpeer1402的管理員),依照其運用方針進行用戶i的身份確認和口令的檢查等,許可訪問。管理員登錄到RAM305或者HD306以便可以對應用戶名檢索公開密鑰v_i。設公開參數和公開密鑰v_i,特別是秘密密鑰s_i由用戶進行管理,可以在主機1406中安全地進行利用。在圖13中示出進行了上面的準備后所執行的本實施形式的協議。圖13是設實體(用戶i使用的IPv6終端)為主機1406,設發放匿名公開密鑰證書的CA為PPPpeer1402,在它們之間所進行的匿名公開密鑰證書的發放協議。在PPP連接中的數據鏈路層的處理結束后,如上述那樣接受到來自主機1406的PPP連接請求的PPPpeer1402,通過鑒別模塊14023基于用戶名(標識符)和口令,進行利用認證協議CHAP的主機的認證。即,主機1406在步驟S1301中將實體名(用戶名)發送給PPPpeer1402。在步驟S1302中PPPpeer1402生成CHAP-詢問,在步驟S1303中將其發送給主機1406。主機1406在步驟S1304中將實體名、口令和CHAP-詢問輸入到哈希函數求CHAP-響應,在步驟S1305將求出結果的CHAP-響應的值發送給PPPpeer1402。在步驟S1306中PPPpeer1402,確認CHAP-響應的合法性。如果能夠確認則由于認證成功,故在步驟S1307中對該所認證的在主機1406傳送IPv6全球地址的前綴和缺省網關的地址。主機1406在步驟S1308中從IPv6全球地址的前綴和隨機的接口ID生成IPv6全球地址,在對其不重復進行確認后,將其分配給網絡接口301,還存儲缺省網關的地址。接著在步驟S1309中作為請求匿名公開密鑰證書的消息將證書請求發送給PPPpeer1402。證書請求,與第一實施形式同樣地,以PPPpeer1402能夠理解的形式生成包含請求匿名公開密鑰證書意思和接口ID的數據。內容是從實體名(用戶名)、口令和序列號進行計算,序列號是,例如將主機206的IPv6鏈路本地地址、缺省網關202的鏈路本地地址和當時的時刻3個連接起來作為一個數據的值。在證書請求中包含對將實體名(用戶名)、口令和序列號輸入到哈希函數的值所生成的數字簽名(認證用簽名)。PPPpeer1402從RAM305或者HD306檢索對應實體名(通信裝置(主機)206的用戶名)所登錄的公開密鑰v_i,在步驟S1310中執行在上述圖1的S103中說明過的匿名公開密鑰證書的生成。即,從分配給PPPpeer1402的IPv6的全球地址的前綴和主機1406的接口ID生成IPv6全球地址,作成包含其生存期等的匿名公開密鑰證書APC_ca(i)。具體來講,就是在上述的APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))中的證書的管理·屬性信息X中包含IPv6全球地址和生存期等。然后,與圖1的S104同樣地,在步驟S1311中將包含所生成匿名公開密鑰證書APC_ca(i)等的證書廣告對主機1406進行發送。主機1406在步驟S1312中對接收到的匿名公開密鑰證書APC_ca(i)的合法性進行確認。這樣,匿名公開密鑰證書APC_ca(i),在其管理·屬性信息X中包含有效期限,在匿名公開密鑰證書APC_ca(i)中所包含的公開密鑰g′和v_i′為,同一實體i(主機1406)的公開密鑰,是伴隨時間的經過進行變更的公開密鑰。在上面的協議中,也可以將在步驟S1305和S1309中所收發的數據匯總成一個在步驟S1305中進行發送。盡管沒有圖示,但在該情況下,主機1406在步驟S1305′中將隨機的接口ID、圖13的步驟S1305的CHAP-響應和步驟S1309的證書請求(與第一實施形式相同)發送給PPPpeer1402。然后,在步驟S1306′中,PPPpeer1402確認CHAP-響應的合法性,檢索所登錄的公開密鑰v_i,從Pv6前綴和接口ID生成IPv6全球地址,生成包含了它和它的生存期(使用期限,例如24小時)等的數據,生成匿名公開密鑰證書APC_ca(i)。在步驟S1307′中將包含所生成的匿名公開密鑰證書APC_ca(i)的證書廣告對主機1406進行發送。主機1406在步驟S1308′中對接收到的匿名公開密鑰證書APC_ca(i)的合法性進行確認。由于在此步驟S1308′中直到與圖13的步驟S1312相當的處理結束,故在此以下的步驟不存在。通過上面的協議,PPPpeer1402對主機1406發放可一次性使用的IPv6地址和對應的一次性匿名公開密鑰證書。主機1406每當通信對方改變,或者每當通話改變,或者每當通信分組發送,就執行圖13的匿名公開密鑰證書發放協議,變更將使用的公開密鑰g′和v_i′。此外,盡管在上面的說明中對PPPpeer1402將IPv6前綴傳送給host1406,host1406從IPv6前綴和接口ID生成IPv6地址的情況進行了敘述,但PPPpeer1402將IPv6地址傳送給host1406,host1406對其進行使用的情況也可用同樣的協議實現。在該情況下,除了在圖13的步驟S1307取代IPv6前綴發送IPv6地址這一點和不需要在步驟S1308中從前綴生成地址的處理這一點以外其他都可用相同的協議實現。(第四實施形式)說明使用第一實施形式和第二實施形式中所發放的一次性IPv6地址和一次性匿名公開密鑰證書進行IPsec通信的實施形式。首先,簡單地說明利用作為安全地共享作為秘密數據和互相的IPv6地址等的數據的SA(SecurityAssociation)的協議的IKE(InternetKeyExchange)的公開密鑰密碼的加密修訂模式的認證方法,并對使用匿名公開密鑰證書的方法進行說明。IKE由兩個Phase組成,在Phase1中建立安全的信道,在Phase2中IPsec等的通信中所使用的SA使用上述安全的信道達成協議。下面僅說明Phase1。在IKE的Phase1中存在Mainmode和Aggressivemode,下面將說明的是RFC2409“TheInternetKeyExchange(IKE)”的pp.13~15的5.3PhaselAuthenticatedwithaRevisedmodeofPublicKeyEncryption的Mainmode。在IKE中,將要進行通信的兩個實體稱為Initiator和Responder。Initiator開始通信。最初Initiator將多個SA發送給Responder,通過將判斷為Responder可以使用的一個SA發送給Initiator,來決定Phasel用的SA。Initiator生成隨機數(稱為Nonce),將用Responder的公開密鑰進行了加密的數據發送給Responder。Responder生成隨機數,將用Initiator的公開密鑰進行了加密的數據發送給Initiator。由此,由于能夠共享各自生成的nonce,故從所共享的nonce生成在其他的通信中使用的密碼的密鑰。細節在RFC2409“TheInternetKeyExchange(IKE)”中有所記載。如從上面的說明可明了那樣,對IPsec需要事先知道通信對方的公開密鑰。考慮下面的狀況。用戶對某購物站點等的因特網上的站點進行訪問。用戶例如在圖2的實施形式中為主機206,在圖14的實施形式中為主機1406。購物站點,在圖2的實施形式中通過因特網201、網關202連接到作為用戶的主機206,在圖14的實施形式中通過因特網1401、PPPpeer1402連接到作為用戶的主機1406。主機206、1406,在開始以此購物站點等的站點為通信對方的通信前,通過上述的協議獲得IPv6地址以及包含公開密鑰的公開密鑰證書。在此實施形式中,進行基于上述的公開密鑰證書執行密鑰交換·更新·變更協議進行密碼·認證通信的步驟。此時,用戶知道(不管是顯式還是隱式)購物站點的IPv6地址(標識符)。在實際進行訪問那里對用戶來說是正確的站點時,通過確認通信對象的IPv6地址用戶能夠顯示地知道地址。通信正在進行中,購物站點也知道通信對方的地址。上面的通信可以用一次性IPv6地址進行。在本實施形式中,設在收發方確定了的時刻,一次性IPv6地址(不更新)使用相同的地址。在此時刻,互相協同發送一次性匿名公開密鑰證書APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))。這樣,由于在一次性匿名公開密鑰證書APC_ca(i)中的管理·屬性信息X中包含IPv6全球地址,故如果確認該IPv6地址與實際進行通信的對方的IPv6地址是否一致,且確認一次性匿名公開密鑰證書的合法性,就能夠判斷其是否真正是通信對方的一次性匿名公開密鑰證書,能夠確認其中所包含的公開密鑰(g′,v_i′)是否真正是通信對方的公開密鑰。一次性匿名公開密鑰證書的合法性,可以如下那樣進行確認。在證書的管理·屬性信息X中包含有CA(上述的路由器202和DHCP服務器203,或者PPPpeer1402)的公開密鑰v_ca和對于此的公開密鑰證書(提供商用認證服務的VeriSign等所發放的證書)。站點使用提供商用認證服務的VeriSign等的公開密鑰(由于廣泛周知故能夠容易地獲得)就能夠確認它們的對應關系是否正確。使用能夠確認合法性的v_ca,就可以確認一次性匿名公開密鑰證書APC_ca(i)=(g′,v_i′,X,Sig_ca(g′,v_i′,X))的合法性,即,可以確認(g′,v_i′,X)和Sig_ca(g′,v_i′,X)的對應關系的正確性。匿名公開密鑰證書APC_ca(i),在其管理·屬性信息X中包含有效期限,在匿名公開密鑰證書APC_ca(i)中所包含的公開密鑰g′和v_i′,是同一實體i的公開密鑰,是伴隨時間的經過進行變更的公開密鑰。主機206、1406,每當通信對方改變(即,每當重新連接到站點),或者每當通話改變,就執行圖11、圖13的協議,對將要使用的IPv6地址以及公開密鑰g′和v_i′進行更新·變更。此外,公開密鑰g′和v_i′也可以每當通信分組發送就進行更新·變更。通過上面的處理,使用一次性IPv6地址和包含它的一次性匿名公開密鑰證書,就能夠可靠地獲得用IPv6地址定義的通信對方的公開密鑰。通過使用這樣所交換的公開密鑰進行上述的IKE的Phase1的Mainmode,就能夠執行與持有該IPv6地址的通信對方的IPsec通信。即,在本實施形式中,進行作為將存在于與IPv6對應裝置所處的本地鏈路內的IPv6對應裝置作為公開密鑰證書發放方進行運用,在一次性匿名公開密鑰證書中包含IPv6地址,因特網上的兩個裝置共享別人都不知道的秘密數據,基于該秘密數據進行加密和認證的協議的IPsec通信,以及,作為在IPsec時,安全地共享秘密數據和相互的IPv6地址等的SA(SecurityAssociation)的協議的IKE(InternetKeyExchange)。從而,就可防止課題中所述那樣的通信對方的冒充。權利要求1.一種公開密鑰證書提供設備,包括生成第一公開密鑰的證書的生成裝置;以及提供由上述生成裝置所生成的第一公開密鑰的證書的提供裝置;其中,由上述生成裝置所生成的第一公開密鑰的證書,包含由認證服務提供者所發放的第二公開密鑰的證書,以及可使用第二公開密鑰確認合法性的數字簽名。2.根據權利要求1所述的設備,其特征在于上述提供裝置,將第一公開密鑰證書提供給子網內的主機。3.根據權利要求1所述的設備,其特征在于上述提供裝置,將第一公開密鑰證書,以及用于決定主機地址的信息提供給主機。4.根據權利要求1所述的設備,其特征在于還包括,將由上述提供裝置提供給第一密鑰的證書的主機連接到因特網的連接裝置。5.一種公開密鑰證書提供程序,包括生成第一公開密鑰的證書的生成步驟;以及提供所生成的第一公開密鑰的證書的提供步驟;其中,在上述生成步驟中所生成的第一公開密鑰的證書,包含由認證服務提供者所發放的第二公開密鑰的證書,以及可使用第二公開密鑰確認合法性的數字簽名。6.根據權利要求1所述的程序,其特征在于上述提供步驟,將第一公開密鑰證書提供給子網內的主機。7.根據權利要求1所述的程序,其特征在于上述提供步驟,將第一公開密鑰證書,以及用于決定主機地址的信息提供給主機。8.根據權利要求1所述的程序,其特征在于還包括,將由上述提供步驟提供給第一密鑰的證書的主機連接到因特網的連接步驟。9.一種在子網內設置了將用子決定地址的信息,以及第一公開密鑰的證書提供給子網內的主機的提供裝置的提供設備,還包括生成第一公開密鑰的證書的生成裝置;由上述生成裝置所生成的第一公開密鑰的證書,包含由認證服務提供者所發放的第二公開密鑰的證書,以及可使用第二公開密鑰確認合法性的數字簽名。10.一種連接設備,包括連接因特網的因特網連接裝置;與主機進行連接的主機連接裝置;以及提供第一公開密鑰的證書的提供裝置;其中,由上述提供裝置所提供的第一公開密鑰的證書,包含由認證服務提供者所發放的第二公開密鑰的證書,以及可使用第二公開密鑰確認合法性的數字簽名。11.一種通信設備,包括通信裝置;以及根據與第一對方的通信結果,決定自身的地址的決定裝置;其中,上述通信裝置,為了與第二對方進行保密通信,將從第一對方所接收的公開密鑰證書通知給第二對方。12.一種通信程序,包括以下步驟根據與第一對方的通信結果,決定自身的地址;為了與第二對方進行保密通信,將從第一對方所接收的公開密鑰證書通知給第二對方。全文摘要本發明提供了公開密鑰證書提供裝置。主機與網關、DHCP服務器或者ISP的PPPpeer進行通信,決定IPv6地址,同時從網關、DHCP或者ISP的PPPpeer接收公開密鑰證書,進而將包含IPv6地址的公開密鑰證書發送給通信對方。主機根據需要從網關、DHCP或者ISP的PPPpeer接收新的公開密鑰證書。文檔編號H04L9/32GK1452356SQ0312251公開日2003年10月29日申請日期2003年4月16日優先權日2002年4月17日發明者大石和臣申請人:佳能株式會社