使用消息认证码的发送/接收系统的制作方法

文档序号:7606100阅读:183来源:国知局
专利名称:使用消息认证码的发送/接收系统的制作方法
技术领域
本发明涉及发送/接收系统,特别是涉及一种用于防止在内容分发时未授权使用内容的技术。
背景技术
近年来,家庭网络已经开始变为现实。在这种网络中,通过网络连接的家中的设备共享内容。这种家庭网络的一种形式是,其中诸如服务器、电视、以及音频设备的设备围绕中央集线器连接成星形。所述集线器连接到路由器,该路由器是家中唯一将连接到外部网络的设备。服务器存储各种内容,通过集线器和路由器从外部网络获取内容,然后响应来自设备的请求分发这些内容给设备。
然而,内容的无限共享从权利保护的角度出发是不能接受的。因此,仅允许被家中的设备使用的内容必须受到限制,以便它们不被分发给外部设备。(以下,“授权域”(AD)被用于表示有限的范围,在该范围内允许共享内容)。为此,当服务器从一个设备接收到内容分发请求时,服务器在分发所述内容给该设备之前,有必要确认该设备是在AD内。
日本待审专利申请No.2001-285284公开了一种聚焦于IP(网际协议)网络地址的方法。在该方法中,服务器判断请求分发内容的设备的网络地址是否与服务器的网络地址相同,并且当所述网络地址相同时认为该设备在AD中。
然而,由于可以很容易利用用户接口来改变网络地址设置,恶意用户可以在外部设备中注册AD网络地址。当从这种外部设备接收到分发请求时,服务器认为该外部设备在AD内并把所述内容分发给该外部设备。因此,无法限制把内容分发给AD外部的设备。

发明内容
本发明的目的是提供一种接收/发送系统,其中,限制将内容分发给AD以外的设备,并且其中不能轻易的改变设置。
(1)本发明的发送/接收装置是包括发送装置和接收装置的发送/接收系统,该发送装置包括获取单元,用于获取通信数据;发送方保存单元,用于保存第一秘密信息,该第一秘密信息等同于由所述接收装置保存的第二秘密信息;发送方产生单元,用于使用第一秘密信息转换所获取的通信数据,从而产生转换的数据,并应用第一预定代码转换到所产生的转换数据,从而产生检验码;以及发送单元,用于发送处于未转换状态其上附有所产生的检验码的通信数据,并且所述接收装置包括接收方保存单元,用于保存第二秘密信息,该第二秘密信息等同于由所述发送装置保存的第一秘密信息;接收方接收单元,用于接收其上附有检验码的通信数据;接收方产生单元,用于使用第二秘密信息转换所接收的通信数据,从而产生转换的数据,并应用等同于第一预定代码转换的第二预定代码转换到所产生的转换数据,从而产生检验码;以及检验单元,用于通过比较所接收的检验码和由接收方产生单元产生的检验码,检验在所述通信数据中是否发生错误。
根据所述结构,发送装置和接收装置保存共有的秘密信息,并使用该秘密信息分别将预定的代码转换应用到通信数据,从而产生各自的检验码。因此,如果在通信路径上的通信数据中没有发生错误,则由发送装置发送的附加到通信数据上的检验码和由接收装置产生的检验码将匹配。
当发送装置发送内容数据作为通信数据时,如果附加到所述内容数据上的检验码与由接收装置从内容数据中产生的检验码匹配,则接收装置获得该内容数据。如果两个检验码不匹配,这意味着在通信路径上的内容数据中已发生错误,因此接收装置判断该内容数据将不能被正确的使用并且丢弃该内容数据。然后,接收装置向发送装置作出重新发送的请求,最终在没有发生错误的情况下获得内容数据。
另一方面,在没有保存与发送装置公同的秘密信息的另一个接收装置中,附加到内容数据上的检验码与由所述另一个接收装置产生的检验码将不匹配,因此,另一个接收装置将判断该内容数据将不能被正确的使用,并丢弃该内容数据。即使另一个接收装置随后向发送装置作出重新发送的请求,检验码也将不匹配。
这样,通过保存着共有的秘密信息的发送装置和接收装置,并且通过使用检验码,限制了对内容数据的无限分发,所述检验码是通过使用秘密信息应用预定的代码转换而产生的。
应当注意,一种可能的结构是其中在分发内容以前,发送装置发送认证数据作为通信数据。这里,只有保存共有秘密信息并且可以使用该秘密信息应用预定的代码转换的接收装置可以获得认证数据。接收装置发送响应认证数据的响应数据给发送装置。
(2)此外,除了可操作在用于利用第一秘密信息转换所获取的通信数据并通过应用第一预定代码转换到所转换的数据生成检验码的第一模式外,发送方产生单元还可操作在用于通过应用第一预定代码转换到通信数据产生检验码的第二模式,可在第一模式和第二模式之间切换,并且可以根据预定用于通信数据的模式,在第一模式或第二模式下产生检验码,以及除了可操作在用于利用第二秘密信息转换所获取的通信数据并通过应用第二预定代码转换到所转换的数据生成检验码的第一模式外,接收方产生单元可操作在用于通过应用第二预定代码转换到通信数据产生检验码的第二模式,可在第一模式和第二模式之间切换,并且可以根据预定用于通信数据的模式,在第一模式或第二模式中产生检验码。
根据所述结构,检验码可以在第一模式或第二模式下产生,并且发送装置和接收装置选择一种预定用于通信数据的模式并产生检验码。由发送装置在第一模式产生的检验码与由接收装置产生的检验码不匹配,除非由接收装置产生的检验码在第一模式下产生。换句话说,只有保存与发送装置共用的秘密信息的特定接收装置才能够获得所述通信数据。
另一方面,由于秘密信息不能用在第二模式下产生的检验码中,因此当使用第二模式时,不能限制所述通信数据仅能通过特定的接收装置获得。
因此,如果预先确定对于内容数据限制其被无限分发,所述检验码将在第一模式下产生,并且如果预先确定对于内容数据不必限制,所述检验码在第二模式下产生,可以限制只有对其限制了无限分发的内容数据的分发。
(3)此外,发送/接收系统还可以包括传送装置,用于将其上附有检验码的通信数据从发送装置传送到外部装置,该传送装置包括传送方接收单元,用于接收由发送装置发送并去往外部装置的其上附有检验码的通信数据;传送方产生单元,用于应用等同于第一代码转换的第三预定代码转换到所接收的通信数据中,从而产生检验码;和检验单元,用于判断由传送方产生单元产生的检验码和由发送方接收单元接收的检验码是否等同,并且当判断该两个检验码是等同的时,传送所述通信数据,当判断该两个检验码不等同时,丢弃该通信数据。
根据所述的结构,在接收到去往外部装置的通信数据时,如果附加到通信数据上的检验码与通过传送装置从通信数据中产生的检验码匹配,则传送装置传送所述通信数据,并且如果两个检验码不匹配则不传送所述通信数据。这里,由于传送装置仅操作在应用预定的代码转换到通信数据中的第二模式,因此传送装置不传送具有在第一模式下产生的附到其上的检验码的通信数据。
因此,可以防止已确定检验码在第一模式下产生的内容数据传送到外部装置。
(4)此外,本发明的发送装置是一种用于发送通信数据到接收装置的发送装置,包括获取单元,用于获取通信数据;保存单元,用于保存和接收装置一样的秘密信息;代码产生单元,用于使用秘密信息转换所获取的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;以及发送单元,用于发送处于未转换状态其上附有所产生的检验码的通信数据到接收装置。
根据所述结构,发送装置保存与接收装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果接收装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,如果在通信路径上的通信数据中没有错误,则通过发送装置发送的附加到通信数据上的检验码与通过接收装置产生的检验码将匹配。
当发送装置发送内容数据作为通信数据时,如果附加到所述内容数据上的检验码与通过接收装置从该内容数据中产生的检验码匹配,则接收装置获取该内容数据。如果两个检验码不匹配,这意味着在通信路径上的内容数据中已发生错误,因此接收装置判断该内容数据将不能被正确的使用并且丢弃该内容数据。然后,接收装置向发送装置作出重新发送的请求,最终在没有发生错误的情况下获取内容数据。
另一方面,在没有保存与发送装置共有的秘密信息的另一个接收装置中,附加到内容数据上的检验码与通过该另一个接收装置产生的检验码将不匹配,因此,该另一个接收装置将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使所述另一个接收装置随后作出重新发送的请求,检验码也将不匹配。
这样,通过保存与接收装置共有的秘密信息的发送装置,并且通过使用利用秘密信息应用预定的代码转换产生的检验码,限制了对内容数据的无限分发。
应当注意的是,一种可能的结构是其中在分发内容以前,发送装置发送认证数据作为通信数据。此结构与当发送内容数据作为通信数据时所描述的一样。
(5)此外,除了可操作在用于利用秘密信息转换所获取的通信数据并通过应用预定的代码转换到所转换的数据产生检验码的第一模式外,所述代码产生单元可操作在用于通过应用预定的代码转换到通信数据而产生检验码的第二模式,并且可以在第一模式和第二模式之间切换,并且所述代码产生单元可以根据预定的标准选择在第一模式和第二模式中的哪个模式下发送方产生单元产生检验码。
根据所述结构,检验码可以在第一模式或第二模式下产生,并且发送装置在基于预定标准选择的模式下产生检验码。如果由接收装置产生的检验码不是在第一模式下产生的,则由发送装置在第一模式下产生的检验码与由接收装置产生的检验码不匹配。换句话说,只有保存与发送装置共有的秘密信息的特定接收装置能够获得所述通信数据。
另一方面,由于所述秘密信息在第二模式下产生的检验码中不能使用,因此当使用第二模式时,不能限制所述通信数据仅能通过特定的接收装置获得。
(6)此外,所述代码产生单元可以选择预定用于通信数据的第一模式和第二模式中的一个模式,作为预定标准。
根据所述结构,为特定的通信数据单独地选择第一模式和第二模式。
因此,如果预先确定对于内容数据限制其被无限分发,所述检验码将在第一模式下产生,如果预先确定对于内容数据不必限制,所述检验码在第二模式下产生,可以限制只有对其限制了无限分发的内容数据的分发。
(7)此外,预定代码转换可以是根据循环冗余检验、哈希函数和检验和之一的代码转换。
这些代码转换可以通过硬件实现,因此对于恶意用户来说很难修改。
(8)本发明的集成电路是一种用于发送通信数据给接收装置的集成电路,包括获取单元,用于获取通信数据;保存单元,用于保存与所述接收装置共有的秘密信息;代码产生单元,用于使用秘密信息转换所获取的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;以及发送单元,用于发送处于未转换状态其上附有所产生的检验码的通信数据到接收装置。
根据所述结构,该集成电路保存与接收装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果接收装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由所述集成电路发送的附加到通信数据上的检验码与由接收装置产生的检验码将匹配。
当所述集成电路发送内容数据作为通信数据时,如果附加到所述内容数据上的检验码与通过接收装置从内容数据中产生的检验码匹配,则接收装置获得该内容数据。如果两个检验码不匹配,这意味着在通信路径上的内容数据中已发生错误,因此接收装置判断该内容数据将不能被正确的使用并且丢弃该内容数据。然后,接收装置向集成电路作出重新发送的请求,最终在没有发生错误的情况下获得内容数据。
另一方面,在没有保存与集成电路共有的秘密信息的另一个接收装置中,附加到内容数据上的检验码与通过该另一个接收装置产生的检验码将不匹配,因此,该另一个接收装置将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使所述另一个接收装置随后向集成电路作出重新发送的请求,所述检验码也将不匹配。
这样,通过保存与接收装置共有的秘密信息的集成电路,并且通过使用利用秘密信息应用预定代码转换产生的检验码,限制了对内容数据的无限分发。
应当注意,一种可能的结构是其中在分发内容以前,集成电路发送认证数据作为通信数据。该结构与当发送内容数据作为通信数据时描述的一样。
(9)本发明的接收装置是一种从发送装置接收通信数据的接收装置,包括保存单元,用于保存与所述发送装置共有的秘密信息;接收单元,用于接收其上附有检验码的通信数据;代码产生单元,用于使用秘密信息转换所接收的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;以及检验单元,用于通过比较所接收的检验码和所产生的检验码,检验所述通信数据中是否发生错误。
根据所述结构,接收装置保存与发送装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果发送装置具有通过使用秘密信息应用预定的代码转换到通信数据产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由所述发送装置发送的附加到通信数据上的检验码与由接收装置产生的检验码将匹配。
当所述发送装置发送内容数据作为通信数据时,如果附加到所述内容数据上的检验码与通过接收装置从内容数据中产生的检验码匹配,则接收装置获得该内容数据。如果两个检验码不匹配,这意味着在通信路径上的内容数据中已发生错误,因此接收装置判断该内容数据将不能被正确的使用并且丢弃该内容数据。然后,接收装置向发送装置作出重新发送的请求,最终在没有发生错误的情况下获得内容数据。
另一方面,在没有保存与发送装置共有的秘密信息的另一个接收装置中,附加到内容数据上的检验码与通过该另一个接收装置产生的检验码将不匹配,因此,该另一个接收装置将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使所述另一个接收装置随后向所述发送装置作出重新发送请求,所述检验码也将不匹配。
这样,通过保存与发送装置共有的秘密信息的接收装置,并且通过使用利用秘密信息应用预定代码转换产生的检验码,接受装置限制了对内容数据的无限分发。
应当注意,一种可能的结构是其中在分发内容以前,发送装置发送认证数据作为通信数据。该结构与当发送内容数据作为通信数据时描述的一样。
(10)此外,除了可操作在用于利用秘密信息转换所获取的通信数据以及通过应用预定的代码转换到所转换的数据产生检验码的第一模式外,所述代码产生单元可操作在用于通过应用预定的代码转换到通信数据产生检验码的第二模式,并且可以在第一模式和第二模式之间切换,并且所述代码产生单元根据预定的标准选择在第一模式和第二模式中的哪个模式下发送方产生单元产生检验码。
根据所述结构,检验码可以在第一模式或第二模式下产生,并且接收装置在基于预定标准选择的模式下产生检验码。如果由发送装置产生的检验码不是在第一模式下产生的,则由接收装置在第一模式产生的检验码与由发送装置产生的检验码不匹配。换句话说,只有保存与发送装置共有的秘密信息的特定接收装置能够获得所述通信数据。
另一方面,由于所述秘密信息在第二模式下产生的检验码中不能使用,因此当使用第二模式时,不能限制所述通信数据仅能通过特定的接收装置获得。
(11)此外,所述代码产生单元可以选择第一模式和第二模式中的一个预定用于通信数据的模式,作为预定的标准。
根据所述结构,为特定的通信数据单独地选择第一模式或第二模式。
因此,如果预先确定对于内容数据限制其被无限分发,所述检验码将在第一模式下产生,并且如果预先确定对于内容数据不必限制,所述检验码在第二模式下产生,可以限制只有对其限制了无限分发的内容数据的分发。
(12)此外,所述预定代码转换可以是根据循环冗余检验、哈希函数和检验和之一的代码转换。
这些代码转换可以通过硬件实现,因此对于恶意用户来说很难修改。
(13)本发明的集成电路是一种用于从发送装置接收通信数据的集成电路,包括保存单元,用于保存与所述发送装置共有的秘密信息;接收单元,用于接收其上附有检验码的通信数据;代码产生单元,用于使用秘密信息转换所接收的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;以及检验单元,用于通过比较所接收的检验码和所产生的检验码,检验所述通信数据中是否发生错误。
根据所述结构,集成电路保存与发送装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果发送装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由所述发送装置发送的附加到通信数据上的检验码与由集成电路产生的检验码将匹配。
当所述发送装置发送内容数据作为通信数据时,如果附加到所述内容数据上的检验码与通过集成电路从内容数据中产生的检验码匹配,则所述集成电路获得该内容数据。如果两个检验码不匹配,这意味着在通信路径上的内容数据中已发生错误,因此集成电路判断该内容数据将不能被正确的使用并且丢弃该内容数据。然后,集成电路向发送装置作出重新发送请求,最终在没有发生错误的情况下获得内容数据。
另一方面,在没有保存与发送装置共有的秘密信息的另一个集成电路中,附加到内容数据上的检验码与通过该另一个集成电路产生的检验码将不匹配,因此,该另一个集成电路将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使所述另一个集成电路向所述发送装置作出重新发送请求,所述检验码也将不匹配。
这样,通过保存与发送装置共有的秘密信息的集成电路,并且使用通过利用秘密信息应用预定代码转换产生的检验码,限制了对内容数据的无限分发。
应当注意,一种可能的结构是其中在分发内容以前,发送装置发送认证数据作为通信数据。该结构与当发送内容数据作为通信数据时描述的一样。
(14)本发明的传送装置是一种用于传送其上附有检验码的通信数据的传送装置,包括存储单元,用于存储有关预定接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有检验码的通信数据;以及传送单元,用于根据所述标识信息,判断是否对所接收的通信数据执行错误检验,并且当要执行错误检验时,使用所述检验码执行错误检验,如果在所述通信数据中没有发现错误,则将所述通信数据传送到接收装置,并且当不执行错误检验时,在不执行错误检验的情况下,传送通信数据给接收装置。
根据所述结构,所述传送装置接收由发送装置发送并去往接收装置的通信数据,并且如果通信数据去往预定的接收装置时,在不执行错误检测的情况下传送所述通信数据。
因此,在以下情况下,即,发送装置发送其上附有特殊检验码的通信数据,通过该特殊的检验码仅有预定的接收装置识别在通信数据中没有发生错误的情况,则可以避免这样的情况,即在接收到通信数据时,传送装置认为已发生错误,并且不传送所述通信数据。
(15)此外,所述传送单元可以包括代码产生子单元,用于当要执行错误检验时,应用预定的代码转换到通信数据中,从而产生检验码;以及检验子单元,用于判断所产生的检验码和所接收的检验码是否等同,并且当判断所述检验码等同时,传送所述通信数据,当判断所述检验码不等同时,丢弃该通信数据。
根据所述结构,在发送装置保存与接收装置共有的秘密信息的情况下,通过使用秘密信息应用预定的代码转换到通信数据中产生检验码,并发送附加到通信数据上的检验码,因此可以避免这样的情况,即在接收到通信数据时,传送装置认为已发生错误,并且不传送所述通信数据。
(16)本发明的集成电路是一种用于传送其上附有检验码的通信数据的集成电路,包括存储单元,用于存储有关预定接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有检验码的通信数据;以及传送单元,用于根据所述标识信息,判断是否对所接收的通信数据执行错误检验,并且当要执行错误检验时,使用所述检验码执行错误检验,如果在所述通信数据中没有发现错误,则将所述通信数据传送到接收装置,并且当不执行错误检验时,传送所述通信数据给接收装置而不执行错误检验。
根据所述结构,所述集成电路接收由发送装置发送并去往接收装置的通信数据,并且如果通信数据是去往预定的接收装置时,在不执行错误检测的情况下传送所述通信数据。
因此,在当发送装置发送其上附有特殊检验码的通信数据,通过该特殊的检验码仅有预定的接收装置识别在通信数据中没有发生错误时,则可以避免在接收到通信数据时,传送装置认为已发生错误,并且不传送所述通信数据。
(17)本发明的传送装置是一种用于传送其上附有检验码的通信数据的传送装置,包括保存单元,用于保存与所述发送装置共有的秘密信息;存储单元,用于存储有关预定接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有检验码的通信数据;代码产生单元,用于使用秘密信息转换所接收的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据,从而产生检验码;检验单元,用于通过比较所接收的检验码和所产生的检验码,检验所述通信数据中是否发生错误;传送判断单元,用于根据所述标识信息,判断是否允许传送所述通信数据;以及传送单元,用于当检验单元确定没有发生错误并且所述传送判断单元判断允许传送所述通信数据时传送所述通信数据。
根据所述结构,传送装置保存与发送装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果发送装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由发送装置发送的附加到通信数据上的检验码与由传送装置产生的检验码将匹配。
此外,如果检验码匹配,则所述传送装置仅传送去往预定的接收装置的通信数据。
因此,所述传送装置对来自发送装置的通信数据执行错误检测,并且仅传送通信数据给预定的接收装置。
(18)此外,所述保存单元还可以保存与接收装置共有的秘密信息,并且所述传送单元使用与接收装置共有的秘密信息转换所述通信数据,从而产生转换的数据,应用预定的代码转换到转换的数据中,从而产生检验码,并且传送其上附有所产生的检验码的通信数据给接收装置。
根据所述结构,所述传送装置保存与接收装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果接收装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由接收装置发送的附加到通信数据上的检验码与由传送装置产生的检验码将匹配。
因此,发送装置将检验码附加到通信数据上用于预定的接收装置,通过该检验码,仅有预定的接收装置识别在通信路径上没有发生错误。
(19)本发明的集成电路是一种用于传送其上附有检验码的通信数据的集成电路,包括保存单元,用于保存与所述发送装置共有的秘密信息;存储单元,用于存储有关预定的接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有检验码的通信数据;代码产生单元,用于使用秘密信息转换所接收的通信数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;检验单元,用于通过比较所接收的检验码和所产生的检验码,检验所述通信数据中是否发生错误;传送判断单元,用于根据所述标识信息,判断是否允许传送所述通信数据;以及传送单元,用于当检验单元确定没有发生错误并且所述传送判断单元判断允许传送所述通信数据时传送所述通信数据。
根据所述结构,集成电路保存与发送装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到通信数据中,从而产生检验码。如果发送装置具有通过使用秘密信息应用预定的代码转换到通信数据中产生检验码的类似结构,则如果在通信路径上的通信数据中没有发生错误,由所述发送装置发送的附加到通信数据上的检验码与由集成电路产生的检验码将匹配。
此外,如果所述检验码匹配,则所述集成电路仅发送去往预定的接收装置的通信数据。
因此,所述集成电路对来自发送装置的通信数据执行错误检测,并且仅将通信数据发送给预定的接收装置。
(20)本发明的内容分发系统是一种包括内容分发装置和内容使用装置的内容分发系统,该内容分发装置包括分发方保存单元,用于保存第一秘密信息,该第一秘密信息等同于由内容使用装置保存的第二秘密信息;分发方产生单元,用于使用第一秘密信息转换请求数据,从而产生转换的数据,并应用第一预定代码转换到所产生的转换数据中,从而产生检验码,所述请求数据用于请求内容使用装置发送响应数据;发送单元,用于发送处于未转换状态其上附有所产生的检验码的请求数据;以及分发单元,用于当从内容使用装置接收到响应数据时,分发内容给内容使用装置,并且所述内容使用装置包括使用方保存单元,用于保存第二秘密信息,该第二秘密信息等同于由所述内容分发装置保存的第一秘密信息;接收单元,用于接收其上附有检验码的请求数据;使用方产生单元,用于使用第二秘密信息转换所接收的请求数据,从而产生转换的数据,并应用等同于第一预定代码转换的第二预定代码转换到所产生的转换数据中,从而产生检验码;以及检验单元,用于通过比较所接收的检验码和由使用方产生单元产生的检验码,检验在所述请求数据中是否发生错误;以及响应单元,用于当检验单元已确定没有发生错误时,解码所述请求数据,并发送响应数据给内容分发装置。
根据所述结构,所述内容分发装置保存与内容使用装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到请求数据中,从而产生检验码。
此外,内容使用装置保存与内容分发装置共有的秘密信息,并使用所述秘密信息应用预定的代码转换到请求数据中,从而产生检验码。
因此,如果在通信路径上的请求数据中没有发生错误,则由内容分发装置发送的附加到请求数据上的检验码与由内容使用装置基于该请求数据产生的检验码将匹配。
如果内容使用装置判断在请求数据中没有发生错误,则解码该请求数据,并发送响应数据给内容分发装置。如果内容分发装置接收到该响应数据,则其分发该内容给内容使用装置。这样,内容使用装置可以从内容分发装置接收到分发的内容。
另一方面,在没有保存与内容分发装置共有的秘密信息的另一个内容使用装置中,附加到内容数据上的检验码与通过另一个内容使用装置产生的检验码将不匹配,因此,该另一个内容使用装置将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使所述另一个内容使用装置随后向所述内容分发装置作出重新发送请求,所述检验码也将不匹配。
这样,通过保存共有秘密信息的内容分发装置和内容使用装置,并且使用通过利用秘密信息应用预定代码转换产生的检验码,限制了对内容数据的无限分发。
(21)本发明的内容分发装置是用于分发内容给内容使用装置的内容分发装置,包括保存单元,用于保存与所述内容使用装置共有的秘密信息;代码产生单元,用于使用秘密信息转换请求数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码,所述请求数据用于请求内容使用装置发送响应数据;发送单元,用于发送处于未转换状态其上附有所产生的检验码的请求数据;以及分发单元,用于当从已接收到所发送的请求数据,并使用检验码判断在请求数据中没有发生错误的内容使用装置接收到响应数据时,分发内容给内容使用装置。
根据所述结构,所述内容分发装置保存与内容使用装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到请求数据中,从而产生检验码。这里,如果内容使用装置具有通过使用秘密信息应用预定的代码转换到请求数据中产生检验码的结构,则如果在通信路径上的请求数据中没有发生错误,由内容分发装置发送的附加到请求数据上的检验码与由内容使用装置基于该请求数据产生的检验码将匹配。此外,内容使用装置将获得并解码所述请求数据,并发送响应数据给内容分发装置。
如果内容分发装置接收到响应数据,则其分发该内容给内容使用装置。
另一方面,在没有保存与内容分发装置共有的秘密信息的另一个内容使用装置中,附加到内容数据上的检验码与通过该另一个内容使用装置产生的检验码将不匹配,因此,该另一个内容使用装置将判断该内容数据将不能被正确的使用,并丢弃该内容数据。换句话说,所述另一个内容使用装置将不发送响应数据。因此,内容分发装置没有接收到接收数据并且不分发内容。
这样,通过保存共有秘密信息的内容分发装置和内容使用装置,并且使用通过使用秘密信息应用预定代码转换产生的检验码,限制了对内容数据的无限分发。
(22)此外,所述响应数据具有附在其上的检测码,该检测码是在内容使用装置中通过使用秘密信息转换响应数据,从而产生转换的数据,并应用预定的代码转换到转换的数据产生的,并且分发单元可以接收该响应数据,并通过使用秘密信息转换该响应数据来判断在该响应数据中是否发生错误,从而产生转换的数据,应用预定的代码转换到转换的数据中,从而产生检验码,并比较附加的检验码和所产生的检验码,当判断没有发生错误时,分发所述内容。
根据所述结构,通过应用与用于请求数据相同的代码转换产生的检验码被附加到响应数据中,并且内容分发装置判断附加到响应数据上的检验码是否与由内容分发装置为请求数据产生的检验码匹配。
这样,使用秘密信息产生的检验码被使用两次,即对请求数据和响应数据,因此认证处理更加可靠。
(23)本发明的内容使用装置是用于从内容分发装置接收内容分发的内容使用装置,包括保存单元,用于保存与内容分发装置共有的秘密信息;接收单元,用于接收其上附有检验码并且通过内容分发装置发送的请求数据,该请求数据用于请求发送响应数据;代码产生单元,用于使用秘密信息转换所接收的响应数据,从而产生转换的数据,并应用预定的代码转换到所产生的转换数据中,从而产生检验码;检验单元,用于通过比较所接收的检验码与所产生的检验码,检验在所述请求数据中是否发生错误;以及响应单元,用于当检验单元确定没有发生错误时,解码所述请求数据,并发送响应数据给内容分发装置。
根据所述结构,所述内容使用装置保存与内容分发装置共有的秘密信息,并使用该秘密信息应用预定的代码转换到请求数据中,从而产生检验码。这里,如果内容分发装置具有通过使用秘密信息应用预定的代码转换到请求数据产生检验码的结构,则如果在通信路径上的请求数据中没有发生错误,由内容分发装置发送的附加到请求数据上的检验码与由内容使用装置基于该请求数据产生的检验码将匹配。
如果检验码匹配,则内容使用装置获得并解码所述请求数据,并发送响应数据给内容分发装置。
另一方面,在没有保存与内容分发装置共有的秘密信息的另一个内容使用装置中,附加到内容数据上的检验码与通过该另一个内容使用装置产生的检验码将不匹配,因此,该另一个内容使用装置将判断所述内容数据将不能被正确的使用,并丢弃该内容数据。即使是所述另一个内容使用装置向内容分发装置作出重新发送请求,所述检验码也将不匹配。
这样,通过保存共有秘密信息的内容分发装置和内容使用装置,并且使用通过利用秘密信息应用预定代码转换产生的检验码,限制了对内容数据的无限分发。
(24)此外,所述响应单元可以使用所述秘密信息转换响应数据,从而产生转换的数据,应用预定的代码转换到转换的数据中,从而产生检验码,并且发送处于未转换状态其上附有检验码的响应数据。
根据所述结构,内容使用装置接收附加有与附加到请求信息上的检验码相同类型的检验码的响应数据。
这样,使用秘密信息产生的检验码被使用两次,即对请求数据和响应数据,因此认证处理更加可靠。
附图简述附

图1显示第一实施例的AD的概况;附图2显示当执行认证处理时服务器的结构;附图3显示当执行认证处理时客户机的结构;附图4显示发送CRC单元的结构;附图5显示附图4中的(a)到(f)的数据配置;附图6显示接收CRC单元的结构;附图7显示附图6中的(g)到(j)的数据配置;附图8显示在认证处理时服务器和客户机的操作;附图9显示在认证处理时AD外部的服务器和客户机的操作;附图10显示第二实施例的AD的概况;附图11显示当从服务器10向客户机20传送帧时路由器50的结构;附图12显示外部分发许可列表的例子;附图13显示已接收到帧的路由器50的操作;附图14显示第三实施例的AD的概况;附图15显示当从服务器10向客户机20传送内容帧时路由器60的结构;附图16显示认证设备列表的例子;以及附图17显示路由选择处理的路由器60的操作。
具体实施例方式
以下将使用附图对本发明的实施例进行详细描述。
第一实施例<概述>
附图1显示第一实施例的AD的概况。
AD包括服务器10,客户机20,路由器30和集线器40,服务器10和客户机20围绕集线器40以星形连接。应当注意,除了客户机20以外还可以有其他客户机连接到集线器40,但是附图中省略了。此外,假定集线器40不执行CRC代码错误检测。
路由器30是AD网络中连接到AD外部的网络的唯一设备(以下也被称作外部网络)。服务器10通过路由器30从外部网络获取内容,并将内容存储在内容存储分发单元11中。当从客户机20接收到内容分发请求时,服务器10首先根据认证处理确认客户机20是AD中的设备,然后分发所述内容给客户机20。所分发的内容通过客户机20的内容供应单元21提供给用户。
本实施例的特征在于CRC(循环冗余检验)码被用于认证处理。CRC码是位于数据链路层数据包(以下被称为帧)结尾的信息,用于检测发生在将在两个接近的终端之间的通信路径上发送的实际数据(以下被称作通信数据)中的错误。换句话说,一个帧由通信数据和其上附加的CRC码构成。通常,按以下方式以CRC码执行错误检测。
(1)发送终端通过生成多项式除将经历错误检测的通信数据,并使用余数作为CRC码。发送终端附加所计算的CRC码到通信数据中并发送具有CRC码的通信数据给接收终端。
(2)接收终端利用生成多项式除其上附有CRC码的通信数据,并得到余数。如果在由通信数据和CRC码构成的帧中在通信路径上没有发生错误则余数具有0值,如果发生错误则余数具有除0以外的值。
(3)如果余数值为0,则接收终端判断在通信路径上没有发生错误,并获得所述通信数据。如果余数值为非0的任意值,则接收终端判断在通信路径上已发生错误,并丢弃该通信数据。
在本实施例中,发送终端和接收终端在(1)之前共享秘密信息,并且在(1)中所述发送装置添加该秘密信息到通信数据中以计算CRC码。在(2)中接收终端插入秘密信息以计算余数。
以下是附图1中的认证处理的一个具体例子。
服务器10和客户机20在秘密信息存储单元13和秘密信息存储单元23中共享秘密信息Ks。在服务器CRC单元14中,服务器10在添加秘密信息Ks到认证数据中之后,计算CRC码,并发送附加到认证数据的结尾的所计算的CRC码给客户机20。
客户机20接收其上附有CRC码的认证数据,在其中插入秘密信息Ks,并计算余数值。如果在通信路径上没有发生错误,以此方式计算的余数值将为0,因此,客户机20可以接收认证数据。
在接收到认证数据之后,客户机20将表示认证数据已被正确接收的响应数据发送到服务器10。
接收到响应数据,服务器10识别客户机20为AD中的设备,并且结束认证处理。
这样,由于服务器10的通信接口12与客户机20的通信接口22都使用特殊的CRC处理,即添加秘密信息Ks以计算CRC码,所述认证数据可以被发送和接收。
另一方面,路由器30不具有在通信接口31和32中共享秘密信息以及执行特殊的CRC处理的功能。因此,即使路由器30接收到其上附有特殊CRC码的认证数据,其也执行正常的CRC处理。因此,路由器30获得非0以外的值作为余数,并判断在通信路径上得认证数据中已发生错误,并丢弃该数据。
这意味着AD外部的客户机不能被服务器10认证,因为由服务器10发送的认证数据当通过路由器30中转时被其丢弃。
此外,CRC码通过由异或元件和移位寄存器构成的编码电路计算。由于通常该编码电路在通信接口的集成电路中提供,所以很难被用户干预。
因此,本实施例防止了其中服务器10或路由器30被用户更改并分发内容给AD外部的客户机的情况。
<结构>
以下对本实施例的服务器和客户机的结构进行说明。
附图2显示当执行认证处理时服务器的结构。
此外,附图3显示当执行认证处理时客户机的结构。
服务器10具有服务器认证处理单元15和通信接口12。通信接口12包括秘密信息保存单元13,数据缓存器121,发送CRC单元122,发送单元123,接收单元124,接收CRC单元125,以及设置接收单元126。
客户机20具有客户机认证处理单元25和通信接口22,其具有等同于服务器10的通信接口12的内部结构。应当注意,发送CRC单元122和接收CRC单元125对应于附图1中的服务器CRC单元14,并且发送CRC单元222和接收CRC单元225对应于附图1中的客户机CRC单元24。
当发送通信数据时,通信接口12被设置到特殊CRC模式或普通CRC模式。特殊CRC模式是其中发送CRC单元122和接收CRC单元125在附加秘密信息Ks到通信数据之后,执行CRC处理的模式。普通CRC模式是其中发送CRC单元122和接收CRC单元125不附加秘密信息Ks到发送数据的情况下执行CRC处理的模式。通信接口12通过设置接收单元126接收来自服务器认证处理单元15的指令,在所述模式之间进行切换。具体地讲,所述指令可以是用于设置特殊CRC模式的特殊CRC命令,或是用于设置普通CRC模式的普通CRC命令。
应当注意,在内容分发处理时,内容存储分发单元11指示通信接口12,该通信接口12被指示切换到为特定内容确定的一个模式。
以下描述普通CRC模式和特殊CRC模式的每一个模式的简单例子。
<假定>
要经历CRC处理的通信数据(5比特)的比特序列符号为(10110)。
此例中使用的生成多项式为G(X)=X^3+X^2+1。在此情况下,生成多项式比特序列符号为(1101)。如果使用该生成多项式则CRC码将为3比特。
所述秘密信息(3比特)的比特序列符号为(110)。
<普通CRC模式下的发送处理>
(1)具有与CRC码相同比特数(即3比特)的空数据(000)被附加到通信数据(10110)的结尾,从而产生计算数据(10110000)。
(2)计算数据(10110000)除以生成多项式(1101),并得到余数。该余数(101)被用作CRC码。
这里,通过使用异或,其等同于模2的操作对每一比特执行除法。
(3)CRC码被附加到通信数据(10110)的结尾,从而产生发送数据(10110101)。
<普通CRC模式下的接收处理>
(1)发送数据(10110101)除以生成多项式(1101),并得到余数,检验余数值是否为0。通过使用模2操作执行除法。
(2)如果余数值为0,则认为在通信路径上没有发生错误,并且通过从发送数据(10110101)中删除CRC码得到通信数据(10110)。
(3)如果余数值不为0,则认为在通信路径上发生错误,并且丢弃该发送数据(10110101)。
以下对特殊CRC模式进行说明。
<特殊CRC模式下的发送处理>
(1)秘密信息(110)被附加到通信数据(10110)的结尾,并且具有与CRC码相同比特数(即3比特)的空数据(000)被进一步附加到产生的数据的结尾,从而产生计算数据(10110110000)。
(2)计算数据(10110110000)除以生成多项式(1101),并得到余数值。该余数值(010)被用作CRC码。
(3)该CRC码被附加到通信数据(10110)的结尾,从而产生发送数据(10110010)。
<特殊CRC模式下的接收处理>
(1)发送数据(10110010)除以生成多项式(1101),并得到余数值,检验该余数值是否为0。
(2)如果余数值为0,则认为在通信路径上没有发生错误,并且通过从发送数据(10110010)中删除CRC码得到通信数据(10110)。
(3)如果余数值不为0,则认为在通信路径上发生错误,并且丢弃该发送数据(10110010)。
如果接收方的通信接口不支持特殊的CRC模式,则在特殊CRC模式下发送的发送数据(10110010)将在普通CRC模式下被处理,并且余数值将为(111),而不是0。因此,将认为已发生错误,并且所述通信数据(10110010)将被丢弃。
应当注意,虽然为了简明这里使用通信数据为五比特的例子,并且所述秘密信息为三比特,实际上通信数据可以大约为60字节到1500字节(在IEEE802.3的情况下),并且所述秘密信息例如可以为16字节。此外,还可以使用由ITU-T指定的33比特CRC-32作为生成多项式。
服务器认证处理单元15执行认证处理以认证客户机20,通过通信接口12与客户机20通信。
附图2中由服务器认证处理单元15执行的认证处理包括三个阶段(1)与客户机认证处理单元25共享秘密信息Ks,(2)发送认证帧给客户机认证处理单元25,以及(3)根据来自客户机认证处理单元25的响应帧判断客户机20是否为AD中的设备。
秘密信息Ks,例如通过服务器认证处理单元15与客户机认证处理单元25之间的挑战响应(challenge-response)认证共享,使用结果会话密钥作为秘密信息Ks。应当注意,通信接口12和22在共享时处于普通CRC模式下。
在共享秘密信息Ks之后,服务器认证处理单元15指示设置接收单元126切换到特殊CRC模式,并输入认证数据到数据缓存器121中。发送CRC单元122接收来自数据缓存器121的认证数据,并在特殊CRC模式下产生CRC码。然后,发送CRC单元122发送由认证数据和附到其上的CRC码构成的认证帧到发送单元123。发送单元123发送该认证帧到客户机20。
当客户机20接收到认证帧时,客户机20的接收CRC单元225在特殊CRC模式下计算余数值。由于客户机20提前与服务器10共享秘密信息Ks,如果在通信路径上没有发生错误则余数值将为0。因此,认证数据由客户机认证处理单元25通过数据缓存器22获得,而不被丢弃。如果客户机认证处理单元25正确获得认证数据,其输入响应数据给数据缓存器221。发送CRC单元222接收来自数据缓存器221的响应数据,在特殊CRC模式下产生CRC码,并发送由响应数据和附到其上的CRC数据构成的响应帧给发送单元223。发送单元223发送响应帧给服务器10。
在接收到响应帧之后,服务器认证处理单元15判断该客户机20为AD中的设备。应当注意,由于响应帧也在特殊CRC模式下产生,因此服务器10的接收CRC单元125计算特殊CRC模式下的余数值,并检验该余数值为0。
下面描述实现所述特殊CRC模式的发送CRC单元和接收CRC的结构。应当注意,由于服务器10的发送CRC单元122和客户机20的发送CRC单元222的结构相同,以下仅描述发送CRC单元122。这也适用于接收CRC单元,仅描述服务器10的接收CRC单元125的结构。
附图4显示发送CRC单元的结构。
发送CRC单元122具有模式切换电路131,发送CRC控制电路132和编码电路133。
模式切换电路131根据来自设置接收单元126的指令在特殊CRC模式与普通CRC模式之间切换,从而指定发送CRC控制电路132的模式。
发送CRC控制电路132响应来自模式切换电路131的模式指定,控制MUX1,MUX2和MUX3。这里,MUX1具有两个输入(0和1)和一个输出,当来自发送CRC控制电路132的控制信号为0时输出“0-侧”输入信号,当来自发送CRC控制电路132的控制信号为1时输出“1-侧”输入信号。
编码电路133利用生成多项式CRC-32除输入计算数据,并输出32比特余数值作为CRC码。在附图中,“x0”,“x1”等是异或元件,“r0”,“r1”等为移位寄存器,其每个时钟周期移动一位到下一个移位寄存器。
在特殊CRC模式下,在MUX1中发送CRC单元122附加秘密信息(b)到从数据缓存器121输出的通信数据(a)的结尾,从而产生中间数据(c)。然后,在MUX2,发送CRC单元122添加32比特空数据(000…0)到从MUX1输出的中间数据的结尾,从而产生计算数据(d)。编码电路133接收计算数据(d),并输出CRC码(e),其为用计算数据(d)除以生成多项式CRC-32的余数值。在MUX3中,发送CRC单元122附加CRC码(e)到通信数据(a)中,从而产生发送数据(f),并发送发送数据(f)给发送单元123作为通信帧。
在普通CRC模式下,发送CRC单元122不附加秘密信息(b)到由MUX1中的数据缓存器121输出的通信数据中。其他处理与特殊CRC模式下相同。
附图5显示附图4中的(a)到(f)的数据结构。
这里,(a)表示通信数据。通信数据由目的地址区,源地址区,类型区和有效载荷区构成。目的地址区和源地址区具有各自的设置在其中的6字节MAC(媒体访问控制)地址。数据类型设置在类型区中,并且实际要发送的数据设置在有效载荷区中。
例如,当服务器10发送认证数据给客户机20时,客户机20的MAC地址被设置在目的地址区中,服务器10的MAC地址被设置在源地址区中,并且认证数据被设置在有效载荷区中。
此外,当客户机20发送响应数据给服务器10时,服务器10的MAC地址被设置在目的地址区中,客户机20的MAC地址被设置在源地址区中,并且响应数据被设置在有效载荷区中。
(b)表示16字节秘密信息Ks。
(c)表示中间数据。中间数据由通信数据(a)与附到其上的秘密信息构成。
(d)表示计算数据。计算数据由中间数据(c)与附到其结尾的32比特空数据(000…0)构成。
(e)表示在编码电路133中计算的32比特CRC码。
(f)表示发送数据。发送数据由通信数据(a)与附到其结尾的CRC码(e)构成。
附图6显示接收CRC单元的结构。
接收CRC单元125包括模式切换电路131,接收CRC控制电路136,编码电路133,余数值判断单元134和分离单元135。
接收CRC单元125具有与所描述的发送CRC单元122类似的结构,因此仅对不同的部分进行描述。
在特殊CRC模式下,在MUX4中,接收CRC单元125插入秘密信息(h)到来自接收单元124的发送数据(g)中,从而产生计算数据(i)。编码电路133接收计算数据(i),并输出通过用生成多项式CRC-32除计算数据(i)获得的余数值(j)。然后输入余数值(j)到余数值判断单元134中。
余数值判断单元134判断由编码电路133计算的余数值是否为0,并将判断结果通知给分离单元135。
如果判断结果为0,则分离单元135将CRC码从发送数据(g)分离,并仅发送通信数据给数据缓存器121。如果判断结果不为0,则分离单元135丢弃该发送数据(g)。
在普通CRC模式下,接收CRC单元125不添加秘密信息(h)到来自MUX4中的接收单元124的发送数据(g)中。其他处理与特殊CRC模式下相同。
附图7显示附图6中的(g)到(j)的数据结构。
(g)表示发送数据,其与附图5中的(f)相同。
(h)表示16字节秘密信息Ks,其与附图5中的(b)相同。
(i)表示计算数据。计算数据由发送数据(g)与插入在有效载荷区与CRC码区之间的秘密信息(h)构成。
(j)表示在编码电路133中计算的32比特余数值。
应当注意,如先前所描述的,发送CRC单元122和接收CRC单元125通过服务器认证处理单元15既可以被设置到特殊CRC模式又可以被设置到普通CRC模式。一种可能的方法是对于发送CRC单元122和接收CRC单元125在普通操作期间被设置到普通CRC模式,仅在认证处理期间被设置到特殊CRC模式。
在此情况下,由于服务器认证单元15识别协议中说明的定时,带有该定时的认证数据被发送,当需要特殊CRC模式下的CRC处理时,发送CRC单元122可以被设置到特殊CRC模式。此外,当不再需要特殊CRC模式下的CRC处理时,服务器认证处理单元15可以设置发送CRC单元122到普通CRC模式。
然而,在认证处理期间,接收CRC单元125不被限制为仅接收特殊CRC模式下发送的帧。这是因为,例如,当服务器10在客户机20的认证处理期间等待发送响应帧时,服务器10可以接收来自除客户机20以外的客户机的内容分发请求。
因此,对于服务器10来说有必要可以即使被设置在特殊CRC模式下,也能正确的接收在普通CRC模式下发送的帧。
最后,当在特殊CRC模式下时,接收CRC单元125可以为所接收的帧计算余数值,如果余数值为除0以外的值,则在普通CRC模式下计算余数值,并且如果余数值仍然为除0以外的值,则判断在通信路径上已发生错误。
此外,可以为服务器10提供用于特殊CRC处理的CRC单元和用于普通CRC处理的CRC单元,并执行并行处理。
<操作>
以下对本实施例的服务器和客户机的操作进行描述。
附图8显示在认证处理时服务器和客户机的操作。
服务器10从客户机20接收内容分发请求,并开始认证处理以确认客户机20是否为AD中的设备(S11)。
首先,服务器10和客户机20共享秘密信息Ks(S12)。秘密信息Ks共享通过例如服务器认证处理单元15和客户机认证处理单元25之间的挑战响应认证来执行,作为结果获得的会话密钥被用作秘密信息Ks。应当注意,此时通信接口12和22都处于普通CRC模式下。
具体来讲,秘密信息Ks按如下方式被共享。
服务器10和客户机20保存各自的公钥加密密钥对(公钥和私钥)和证书。服务器10产生随机数An,其被发送至客户机20作为挑战数据。然后,服务器10接收响应数据和证书,响应数据是客户机20对随机数An使用客户机20的私钥产生的签名。
服务器10使用证书确认客户机20的公钥的真实性,然后使用公钥验证响应数据。客户机20执行相同类型的操作,并验证来自服务器10的响应数据。
此外,服务器10和客户机20使用Diffie-Hellman(DH)密钥共享系统共享会话密钥作为秘密信息Ks。
在以此方式共享秘密信息Ks之后,服务器10产生认证数据(S13),应用特殊CRC模式下的CRC处理(S14),并发送认证帧给客户机20(S15)。
客户机20接收该认证帧,并应用特殊CRC模式下的CRC处理以计算余数值(S16)。
接着,客户机20判断余数值是否为0(S17)。由于客户机20与服务器10共享秘密信息Ks,如果在通信路径上没有发生错误,则余数值将为0。
如果余数值为0,客户机20产生响应数据(S18),应用特殊CRC模式下的CRC处理(S19),并发送响应帧给服务器10(S20)。
如果余数值为0,则客户机20确定在通信路径上已发生错误并且丢弃所述认证数据。
服务器10接收响应帧,应用特殊CRC模式下的CRC处理,并计算余数值(S21)。
然后,服务器10判断余数值是否为0(S22)。由于服务器10与客户机20共享秘密信息Ks,如果在通信路径上没有发生错误,则余数值将为0。
如果余数值为0,服务器10认为客户机20为AD中的设备,并结束认证处理(S23)。
如果余数值不为0,服务器10确定在通信路径上已发生错误,并丢弃响应数据。
以下对当AD外部的客户机向服务器10作出内容分发请求时,服务器10和AD外部的客户机(以下称为外部客户机)的操作进行描述。
附图9显示在认证处理时服务器和外部客户机的操作。
服务器10接收来自外部客户机的内容分发请求,并开始认证处理以确认客户机是否为AD中的设备(S31)。
首先,服务器10和客户机执行秘密信息Ks的共享(S32)。应当注意,由于这里在普通CRC模式下执行通信,所发送的帧要经过路由器30。
在共享秘密信息Ks之后,服务器10产生认证数据(S33),应用特殊CRC模式下的CRC模式处理(S34),并发送认证帧到外部客户机(S35)。
然而,由于路由器30不支持特殊CRC模式,其确定在通信路径上发生错误,并丢弃所接收的认证帧。
外部客户机等待接收认证帧,但是由于认证帧已被路由器30丢弃,外部客户机没有接收到所述帧而超时。同时,在发送认证帧之后,服务器10等待接收来自客户机的响应帧,但是在没有接收到响应帧的情况下超时,认证处理结束(S36)。
应当注意,路由器30可以具有这样的结构,利用该结构,在丢弃认证帧之后,其请求服务器10重新发送认证帧。在此情况下,服务器10重新发送认证帧,但是路由器30再次丢弃重新发送的帧。重复这些操作。这里,服务器10可以对执行重新发送的次数进行计数,并在特定次数之后强迫结束认证处理。
这样,在本实施例中,服务器10和客户机20支持特殊CRC模式,并且服务器10可以认证作为AD中的设备的客户机20。另一方面,路由器30不支持特殊CRC模式,因此丢弃任何从服务器10接收的认证帧。这意味着来自服务器10的认证帧不能到达外部客户机,外部客户机不能接受认证。
在所描述的处理之后,服务器10分发内容,从而AD中的客户机可以分发内容,同时外部客户机不能分发内容。因此,可以防止无限制的共享。
第一实施例的描述完成。
应当注意,服务器10中的功能块,即服务器认证处理单元15,秘密信息保存单元13,数据缓存器121,发送CRC单元122,发送单元123,接收单元124,接收CRC单元125,以及设置接收单元126典型的被实现为集成电路,特别地为LSI(大规模集成电路)。
类似的,客户机20中的功能块,即客户机认证处理单元25,秘密信息保存单元23,数据缓存器221,发送CRC单元222,发送单元223,接收单元224,接收CRC单元225,以及设置接收单元226典型的被实现作为集成电路,特别是LSI。
这里所描述的任何一个LSI都可以被称为IC,系统LSI,超级LSI,或超LSI,取决于集成度。
此外,集成电路并不局限于LSI,而是也可以被实现作为专用电路或通用电路。可以使用在制造LSI之后可编程的FPGA(现场可编程门阵列),或者可以使用其中LSI中的电路单元的连接和设置可重新配置的可重新配置处理器。
此外,如果由于半导体技术的进步或从半导体技术进行推导,出现了取代LSIs的集成电路的技术,该技术也可以被用于所述功能块的集成。生物技术是一种可能的应用。
第二实施例
<概述>
在所描述的第一实施例中,在认证处理时认证帧被阻止通过路由器30到达其他的网络。这意味着存储在服务器10中的内容仅在附属于路由器30的一个子网中被共享。从另一个角度来看,可以认为AD的范围被限制到一个子网中。
然而,如果AD的范围被限制到一个子网中,则会出现问题,例如,在其家中的楼上或楼下操作不同网络的用户在楼上的设备中将不能使用存储在楼下的服务器中的内容。
为此,在本实施例中,服务器和客户机的MAC地址被提前注册在路由器中,如果接收到用于一个已注册的MAC地址的帧,则在不使用CRC码进行错误检测的情况下传送所述帧。这意味着当由服务器通过路由器发送认证帧给客户机时,路由器不丢弃该认证帧,并且穿过路由器执行认证。
附图10显示第二实施例的AD的概况。
所述AD包括服务器10,客户机20,路由器50和集线器40和41。
服务器10和客户机20不同于第一实施例之处于于它们通过路由器50连接并且分别属于不同的网络地址,然而它们的内部结构与第一实施例中的相同。
因此,本实施例与第一实施例的相同之处于于服务器10和客户机20提前共享秘密信息Ks,并且服务器10在服务器CRC单元14中将特殊CRC模式CRC处理应用到认证数据,并产生发送至客户机20的认证帧。
此外,如果客户机20接收到该认证帧,其应用特殊CRC模式下的CRC处理并计算余数值,判断该余数值是否为0。发送响应帧的后续处理相同。
本实施例的路由器50提前在其中记录允许分发内容的设备的MAC地址的外部分发许可列表。如果包含在所接收的帧中的目的MAC地址被注册在外部分发许可列表中,路由器50在不执行错误检测的情况下传送所述帧。这意味着如果服务器10的MAC地址和客户机20的MAC地址被注册,则在不使用CRC码进行错误检测的情况下,从服务器10向客户机20传送认证帧并从客户机20向服务器10传送响应帧。应当注意,这不仅适用于认证帧和响应帧,而且适用于其中存储有内容的内容帧。
<结构>
附图11显示当从服务器10向客户机20传送帧时的路由器50的结构。
路由器50包括两个通信接口51和52,外部分发许可列表存储单元55,路由选择处理单元58,以及注册单元59。应当注意,为了简便,通信接口51被表示为仅具有接收功能,通信接口52被表示为仅具有发送功能,但是实际上通信接口51也具有发送功能,并且通信接口52也具有接收功能。此外,通信接口的数量并不限制为2个。
接收单元56从服务器10接收帧,并输入所述帧到地址检验单元511中。
地址检验单元511检测包含在所述帧中的目的MAC地址和源MAC地址,并判断MAC地址和相应的通信接口是否已注册在外部分发许可列表中。如果它们已注册,则地址检验单元511将所述帧传送至相应通信接口的发送单元(附图11中的通信接口52的发送单元57)。如果一个或多个MAC地址和相应的通信接口没有注册在外部分发许可列表中,则地址检验单元511将所述帧输入到CRC单元53中。
CRC单元53使用CRC码执行帧的错误检验,并判断余数值是否为0。如果余数值为0,则由于在通信路径上没有发生错误,CRC单元53获取包含在所述帧中的通信数据。如果余数值不为0,则由于认为在通信路径上已发生错误,CRC单元53丢弃所述帧。应当注意,CRC单元53仅支持普通CRC模式。
路由选择处理单元58具有内部路由选择表,并将所获得的通信数据传送至对应于目的网络地址的通信接口(附图11中的通信接口52)。
CRC单元54应用CRC处理到从路由选择处理单元58传送的通信数据,并将所述通信数据输入至发送单元57。应当注意,CRC单元54仅支持普通CRC模式。
如果所接收的帧为地址注册帧,则注册单元59分别将设置在注册帧和接收地址注册帧的通信接口中的设备网络地址、设备MAC地址和设备名记录在外部分发许可列表的网络地址栏550、MAC地址栏551、设备栏552,以及端口栏553中。
这允许服务器10通过地址注册帧注册其自己的网络地址、MAC地址、设备名、和服务器10所连接的路由器50的通信接口。这对于客户机20来说是相同的。
附图12显示外部分发许可列表的例子。
这表示具有MAC地址(08-00-16-21-5A-63)的服务器在网络地址(133.1.144.0)上,并且接收地址注册帧的通信接口为端口1。路由器50识别服务器存在于其上的网络在AD中,并且其他网络在AD外部。
换句话说,网络地址(133.1.145.0)的电视和游戏机是AD外部的设备。通常AD外部的设备不能接受认证,但是如果它们注册在外部分发许可列表中,则它们可以接受来自服务器的认证。
由于网络地址注册的设置可能被恶意用户修改,因此有可能外部设备可以被设置成它们是AD中的设备。例如,硬盘记录器被虚假地注册为在网络地址(133.1.144.0)上。
然而,由于路由器50在栏553中注册接收地址注册帧的通信接口,路由器50可以检测硬盘记录器是被虚假注册的,因为网络地址栏550和端口栏553不匹配。
这样,路由器50禁止帧传送至虚假注册的外部设备。
应当注意,禁止帧传送至外部设备可以在外部分发许可列表中的网络地址和端口已被校正时取消,或者即使网络地址和端口已被校正也可以保留。
根据所描述的结构,即使路由器50接收附加有特殊CRC码的帧,如果由该帧表示的目的网络地址被注册在外部分发许可列表中,该帧可以被传送而不在CRC单元中进行错误检验。
<操作>
以下将对路由器50的操作进行描述。应当注意,服务器10和客户机20的认证处理与第一实施例中描述的相同,因此以下描述中省略。
附图13显示当接收到帧时路由器50的操作。
路由器50接收帧(S31)。
在接收到帧时,路由器50检测包含在帧中的目的MAC地址(S32)。
如果检测的MAC地址被注册在外部分发许可列表中(S33是),则路由器50通过对应于所注册的MAC地址的通信接口传送所接收的帧(S39)。
如果检测的MAC地址没有注册在外部分发许可列表中(S33否),则路由器50使用CRC码执行错误检验(S34)。
如果余数值不为0(S35否),路由器50认为在通信路径上已发生错误,并丢弃所述帧(S36)。
如果余数值为0(S35是),则路由器50认为在通信路径上没有发生错误,并执行路由选择(S37)。
根据路由选择处理,路由器50指定目的通信接口,计算附加到所述帧上的CRC码(S38),并发送附加有CRC码的帧(S39)。
以这种方式,本实施例提前注册服务器10的MAC地址和客户机20的MAC地址,并且在不进行使用CRC码的错误检验的情况下从服务器10到客户机20或从客户机20到服务器10传送帧。这意味着即使与服务器10在不同的网络上的客户机20也可以分发内容。
第二实施例的描述结束。
应当注意,所述功能块,即CRC单元53和54,外部分发许可列表存储单元55,接收单元56,路由选择单元57,路由选择处理单元58,注册单元59,和地址检验单元511典型的被实现为集成电路,特别是LSI。
这里所描述的LSI取决于集成度,可以被称为IC,系统LSI,超级LSI,超LSI。
此外,集成电路并不局限于LSI,而是也可以被实现作为专用电路或通用电路。可以使用在制造LSI之后可编程的FPGA(现场可编程门阵列),或者可以使用其中LSI中的电路单元的连接和设置可重新配置的可重新配置处理器。
此外,如果由于半导体技术的进步或从半导体技术进行推导,出现了取代各种LSI的集成电路技术,该技术也可以被用于所述功能块的集成。生物技术是一种可能的应用。
第三实施例<概述>
在第二实施例中,路由器提前注册服务器和客户机的MAC地址,并且当接收到用于一个已注册的MAC地址的帧时,在不执行利用CRC码的错误检验的情况下传送所述帧。这防止了由服务器通过路由器发送给客户机的帧被路由器丢弃,即使该路由器的通信接口不支持特殊CRC模式。
然而,利用该方法,即使在通信路径上发生错误,路由器也在不执行错误检验的情况下从服务器到路由器传送帧。这在网络繁忙的环境下特别成问题。
考虑到该问题,本实施例通过提供在路由器中提供支持特殊CRC模式的通信接口,允许在路由器中的特殊CRC模式错误检验。这防止了路由器传送其中已发生错误的帧。与第一实施例中的相同,在本实施例中,连接到外部网络的通信接口仅支持普通CRC模式。这防止了内容的无限共享。
附图14显示第三实施例的AD的概况。
AD包括服务器10,客户机20,路由器60和集线器40和41。
服务器10和客户机20与第二实施例相同,通过路由器60连接并且属于不同的网络地址。
路由器60包括通信接口61、62和63,以及认证设备列表69。通信接口61和62支持特殊CRC模式下的CRC处理。通信接口63仅支持普通CRC模式下的CRC处理。
服务器10和客户机20分别连接到通信接口61和62,并且在AD外部的英特网70连接到通信接口63。
在本实施例中内容根据以下过程被分发。
(1)在内容分发以前,服务器10执行认证处理以检验路由器60是否为AD中的设备。该认证处理按照第一实施例中所描述的执行。
(2)类似的,在内容分发以前,客户机20执行认证处理以检验路由器60是否为AD中的设备。
(3)如果在服务器10与客户机20之间的认证处理正常结束,则路由器60将服务器10和客户机20中的MAC地址注册在认证设备列表中。
(4)在接收到来自服务器10并去往客户机20的存储内容的内容帧时,路由器60执行特殊CRC模式下的错误检验,并判断是否发生错误。
(5)当判断没有发生错误时,路由器60参考认证设备列表,如果服务器10和客户机20都被注册在认证设备列表中,则执行特殊CRC模式下的内容帧的CRC处理,并发送所述内容帧到客户机20中。
这样,在本实施例中,由于当中转帧时,路由器60执行了错误检测,因此防止了传送其中已发生错误的帧。从而,网络资源可以被更加有效地利用。
此外,连接到作为外部网的英特网70的通信接口仅支持普通CRC模式,因此AD外部的客户机利用路由器60不能执行认证处理。因此,AD外部的客户机没有注册在认证设备列表中,并且不能从服务器10接收内容的分发。这防止了内容的无限使用。
<结构>
附图15显示当从服务器10向客户机20发送内容帧时路由器60的结构。
路由器60包括通信接口61和62,以及路由选择处理单元80。通信接口61和62与附图2中的通信接口12相同,但是在此仅表示了通信接口61的接收功能和通信接口62的发送功能。
路由选择处理单元80包括路由选择表81,认证设备列表69和设置单元82。
路由器60的通信接口和连接至其的网络地址都对应地注册在路由选择表81中。
在与路由器60的认证处理中,被认证为AD中的设备的设备与它们的MAC地址对应地注册在认证设备列表69中。
在接收到已经历普通CRC模式下的CRC处理的帧后,路由选择处理单元80参照路由选择表81并传送所接收的帧到相应的通信接口。在接收到已经历特殊CRC模式下的CRC处理的帧后,路由选择处理单元80参照认证设备列表69并传送所接收的帧到相应的通信接口。
设置单元82接收来自接收CRC单元84的有关所接收的帧已经经历普通CRC模式和特殊CRC模式中的哪个模式的通知,并设置发送CRC单元85。
换句话说,服务器10中已经历特殊CRC模式下的CRC处理的帧在被传送之前也在路由器60中经历特殊模式下的CRC处理。此外,服务器10中已经历普通CRC模式下的CRC处理的帧在被传送之前也在路由器60中经历普通模式下的CRC处理。
由于通信接口63不支持特殊CRC模式,如果服务器10错误的试图发送已经历特殊CRC模式下的CRC处理的内容帧至外部客户机,此结构防止了内容被发送给外部客户机。这防止了内容被分发给AD外部的客户机。
附图16显示认证设备列表的例子。
其表示了例如具有MAC地址(08-00-16-21-5A-63)的服务器存在于网络地址(133.1.144.0)上,并且连接到该网络地址的通信接口为端口1。
包含在认证数据中的信息在正确完成认证之后被路由器分别注册到网络地址栏690,MAC地址栏691,设备栏692和端口栏693中。换句话说,由于认证注册列表不是由用户注册的,因此没必要提供用户接口,对于用户来说很难改变所述设置。
<操作>
以下描述路由器60的操作。应当注意,路由器60与服务器10之间的认证处理,以及路由器60与客户机20之间的认证处理与第一实施例中的相同,以下说明中省略。
附图17显示路由器60的路由选择处理的操作。
如果所接收的帧不是去往路由器60本身,但是将要被发送,则路由器60开始路由选择处理。
路由选择处理单元80从接收帧的通信接口接收通知,该通知关于在特殊CRC模式和普通CRC模式中的哪个模式下,帧被判定为没有错误。如果通知的模式为普通CRC模式(S71是),则路由选择处理单元80参照路由选择表(S72),指定对应于通信数据的目的网络地址的通信接口,并发送普通CRC模式设置指令给指定的通信接口的发送CRC单元(S73)。然后路由选择处理单元80发送该发送数据(S74)。
当在步骤S71通知为特殊CRC模式时(S71否),路由选择处理单元80参照认证设备列表(S75),判断服务器10和客户机20是否已被注册(S76)。
如果服务器10和客户机20被注册(S76是),则路由选择处理单元80指定对应于通信数据的目的MAC地址的通信接口,发送特殊CRC模式设置指令给所指定的通信接口的CRC单元(S77),并传送数据(S74)。
当路由选择处理单元80确定在步骤S76未注册服务器10和客户机20中之一或两者时(S76否),丢弃所述数据(S78)。
这样,在本实施例中,路由器60当中转帧时执行错误检测,并且可以防止发送其中已发生错误的帧。因此,网络资源可以被有效利用。这对于其中很容易在通信路径上发生错误并且网络繁忙的无线LAN来说特别有效。
此外,由于连接到AD外部的英特网70的通信接口仅支持普通AD模式,外部客户机不能利用路由器60执行认证处理。因此,外部客户机没有注册在认证设备列表中,并且不能从服务器10分发内容。这防止了内容的无限使用。
第三实施例的描述完成。
应当注意,路由选择处理单元80及其内部路由选择表81,认证设备列表69和设置单元82,以及功能块,即秘密信息存储单元64和66,发送CRC单元84和85,以及发送单元83和86典型的被实现为集成电路,特别是LSI。
这里所描述的LSI取决于集成度,可以被称为IC,系统LSI,超级LSI,超LSI。
此外,集成电路并不局限于LSI,而是也可以被实现为专用电路或通用电路。可以使用在制造LSI之后可编程的FPGA(现场可编程门阵列),或者可以使用其中LSI中的电路单元的连接和设置可重新配置的可重新配置处理器。
此外,如果由于半导体技术的进步或从半导体技术进行推导,出现了取代各种LSI的集成电路技术,该技术也可以被用于所述功能块的集成。生物技术是一种可能的应用。
修改实例虽然所述实施例是基于以下假定,即,特殊CRC模式下的CRC码和普通CRC模式下的CRC码不同,也存在这些CRC码将是等同的可能性。如果CRC码是等同的,则即使仅支持普通模式的客户机或路由器也将可以正确的获得附加有特殊CRC模式CRC码的通信数据。
考虑到该问题,可以使用以下结构,从而仅支持普通CRC模式的客户机或路由器不能获得通信数据,即使特殊CRC模式下的CRC码与普通CRC模式下的CRC码是等同的。
<发送处理>
(1)计算当秘密信息被附加到通信数据时的CRC码与普通CRC码。
(2)比较当附加秘密信息时的CRC码与普通CRC码。
(3)当两个CRC码等同时,使在当附加秘密信息时的CRC码中的比特反转,并且将反转的CRC码附加到所述通信数据中。例如,如果当附加秘密信息时的CRC码为(101),则比特反转码将是(010)。
(4)当附加秘密信息到通信数据时的CRC码与普通CRC码不同时,附加有CRC码的秘密信息被附加到通信数据。
<接收处理>
(1)计算当秘密信息被附加到通信数据时的CRC码与普通CRC码。
(2)比较当附加秘密信息时的CRC码与普通CRC码。
(3)当两个CRC码等同时,使附加到通信数据上的CRC码中的比特反转,并且比较反转的CRC码和当附加秘密信息时的CRC码。如果两个CRC码等同,则获取所述通信数据。
(4)当添加秘密信息时的CRC码与普通码等同时,使附加到通信数据上的CRC码反转,比较反转的CRC码和当附加秘密信息时的CRC码。如果CRC码不匹配则丢弃所述通信数据。
(5)当添加秘密信息时的CRC码与普通CRC码不同时,比较附加到通信数据上的CRC码与当添加秘密信息时的CRC码。如果两个CRC码等同,则获取所述通信数据。
(6)当添加秘密码时的CRC码与普通CRC码不同时,比较附加到通信数据上的CRC码与当添加秘密信息时的CRC码。如果两个CRC码不同则丢弃所述通信数据。
根据所描述的结构,即使当在添加秘密信息到通信数据之后计算的CRC码与不添加秘密信息计算的CRC码等同时,CRC码可以被识别为已经在添加秘密信息之后被计算。
应当注意,本发明的认证方法可以用于关于除内容分发以外的其它目的的认证处理。
此外,该认证方法可以被应用而不管数据链路层规范是以太网(TM),无线LAN,蓝牙还其他数据链路层规范。
CRC码可以是加密哈希值(32比特)而不是检验和,以便使秘密信息更加难以被解码。
此外,为了提高安全性,CRC码例如可以是160比特的加密哈希值,而不是32比特,。
此外,有效载荷段可以被加密以进一步提高安全性。
应当注意,虽然每个实施例都包括在加密处理中共享秘密信息的阶段,该秘密信息也可以被提前存储在设备中,以便减少认证处理所需的时间。
此外,用于共享秘密信息的方法并不局限于第一实施例中所描述的,可以是允许服务器和客户机共享秘密信息的任何方法。
在所述实施例中认证处理可以执行多次,因为存在错误将实际发生在通信路径上的可能性。如果认证处理被执行多次,则所述秘密信息每次都可以被改变以增加安全性。
此外,为了确保相对于第三方的匿名,接收和发送终端可以相互通知错误的地址,并在后续的认证处理中使用错误的地址,从而使第三方很难识别发送和接收终端。
一种可能的结构是其中进行检验以确认被认证的设备是否由于在过去执行了非法行为而已经被废弃。这防止了内容被分发给非法设备。
此外,为了防止非法设备伪装成合法设备,启动者和响应者中至少之一可以在有效载荷中包括有关其自身的信息(例如证书、IP地址,和设备ID)。
为了防止信息被黑客篡改,启动者和响应者中至少之一可以在有效载荷中包括目的地址段,源地址段,类型段或有效载荷段的哈希值,或这些段的组合的哈希值。此外,数字签名可以被应用到哈希值。
启动者和响应者中至少之一的有效载荷可以包括在认证之后的通信所需的信息(端口号,内容信息,内容属性等等),以便使能够响应版本控制信息的等级而执行认证。
应当注意,为了提前通知有关内容分发的信息以在认证之后开始,的有效载荷可以包括有关设备的处理能力的信息(例如,设备是否为解码器、编码器或通信接口)。
为了可靠地确认发送和接收终端是否在相同的路由器中,启动者和响应者中至少之一的有效载荷可以包括有关设备所连接的路由器的信息(例如IP地址或MAC地址)。
虽然在所述实施例中提供了执行从连接至不同网络的装置的OSI参考模型的第一层(物理层)到第三层(网络层)的处理的路由器,也可以作为代替,提供执行从第一层(物理层)到第二层(数据链路层)的处理的桥。
构造所述实施例以在附加秘密信息到通信数据结尾之后,在特殊CRC模式下计算CRC码,从而在普通CRC模式下错误总是被误识别。然而,只要错误被误识别,秘密信息就不被限制成要附加到通信数据的结尾。例如,秘密信息可以附加到通信数据的开头,或者从通信数据的开头开始插入预定比特数。此外,代替在添加秘密信息到通信数据之后计算CRC码,通过在普通模式下从通信数据中计算CRC码,并且使用通过利用秘密信息转换获得的转换CRC码也可以获得相同的效果。
工业实用性本发明可以用在家庭网中的内容发送/分发系统中。
权利要求
1.一种发送/接收系统,包括发送装置和接收装置,所述发送装置包括获取单元,用于获取通信数据;发送方保存单元,用于保存第一秘密信息,所述第一秘密信息等同于由所述接收装置保存的第二秘密信息;发送方产生单元,用于使用所述第一秘密信息转换所述获取的通信数据,从而产生转换数据,并将第一预定代码转换应用到所述产生的转换数据中,从而产生检验码;以及发送单元,用于发送处于未转换状态的、其上附有所述产生的检验码的通信数据,以及所述接收装置包括接收方保存单元,用于保存所述第二秘密信息,所述第二秘密信息等同于由所述发送装置保存的所述第一秘密信息;接收方接收单元,用于接收其上附有所述检验码的所述通信数据;接收方产生单元,用于使用所述第二秘密信息转换所述接收的通信数据,从而产生转换数据,并将等同于所述第一预定代码转换的第二预定代码转换应用到所述产生的转换数据,从而产生检验码;以及检验单元,用于通过将所述接收的检验码与由所述接收方产生单元产生的检验码进行比较,检验在所述通信数据中是否发生错误。
2.如权利要求1所述的发送/接收系统,其中除了可操作在第一模式外,所述发送方产生单元还可操作在第二模式,可在所述第一模式和所述第二模式之间切换,以及可以根据预定用于所述通信数据的模式,在所述第一模式或所述第二模式下产生所述检验码,其中,所述第一模式用于利用所述第一秘密信息转换所述获取的通信数据以及通过将所述第一预定代码转换应用到所述转换数据而产生所述检验码,所述第二模式用于通过将所述第一预定代码转换应用到所述通信数据而产生检验码,以及除了可操作在第一模式外,所述接收方产生单元还可操作在第二模式,可在所述第一模式和所述第二模式之间切换,以及可以根据预定用于所述通信数据的模式,在所述第一模式或所述第二模式下产生所述检验码,其中,所述第一模式用于利用所述第二秘密信息转换所述获取的通信数据以及通过将所述第二预定代码转换应用到所述转换数据而产生所述检验码,所述第二模式用于通过将所述第二预定代码转换应用到所述通信数据而产生检验码。
3.如权利要求2所述的发送/接收系统,还包括传送装置,用于将其上附有所述检验码的所述通信数据从所述发送装置传送至外部装置,所述传送装置包括传送方接收单元,用于接收由所述发送装置发送并去往所述外部装置的其上附有所述检验码的所述通信数据;传送方产生单元,用于将等同于所述第一代码转换的第三预定代码转换应用到所述接收的通信数据,从而产生检验码;以及检验单元,用于判断由所述传送方产生单元产生的所述检验码与由所述发送方接收单元接收的所述检验码是否等同,以及当判断所述两个检验码等同时,传送所述通信数据,当判断所述两个检验码不等同时,丢弃所述通信数据。
4.一种用于将通信数据发送到接收装置的发送装置,包括获取单元,用于获取通信数据;保存单元,用于保存与所述接收装置共有的秘密信息;代码产生单元,用于使用所述秘密信息转换所述获取的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;以及发送单元,用于将处于未转换状态的、其上附有所述产生的检验码的所述通信数据发送到所述接收装置。
5.如权利要求4所述的发送装置,其中除了可操作在第一模式外,所述代码产生单元还可操作在第二模式,以及可在所述第一模式和所述第二模式之间切换,其中,所述第一模式用于利用所述秘密信息转换所述获取的通信数据以及通过将所述预定的代码转换应用到所述转换数据而产生所述检验码,所述第二模式用于通过将预定的代码转换应用到所述通信数据而产生检验码,以及所述代码产生单元根据预定的标准,选择操作在所述第一模式和所述第二模式中的哪一个模式,以产生所述检验码。
6.如权利要求5所述的发送装置,其中所述代码产生单元从所述第一模式和所述第二模式中选择预定用于所述通信数据的模式,作为所述预定的标准。
7.如权利要求6所述的发送装置,其中所述预定的代码转换是根据循环冗余检验、哈希函数以及检验和中之一的代码转换。
8.一种用于将通信数据发送到接收装置的集成电路,包括获取单元,用于获取通信数据;保存单元,用于保存与所述接收装置共有的秘密信息;代码产生单元,用于使用所述秘密信息转换所述获取的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;以及发送单元,用于将处于未转换状态的、其上附有所述产生的检验码的所述通信数据发送到所述接收装置。
9.一种从发送装置接收通信数据的接收装置,包括保存单元,用于保存与所述发送装置共有的秘密信息;接收单元,用于接收其上附有检验码的所述通信数据;代码产生单元,用于使用所述秘密信息转换所述接收的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;以及检验单元,用于通过将所述接收的检验码和所述产生的检验码进行比较,检验所述通信数据中是否发生错误。
10.如权利要求9所述的接收装置,其中除了可操作在第一模式外,所述代码产生单元还可操作在第二模式,以及可在所述第一模式和所述第二模式之间切换,其中,所述第一模式用于利用所述秘密信息转换所述获取的通信数据以及通过将所述预定的代码转换应用到所述转换数据而产生所述检验码,所述第二模式用于通过将预定的代码转换应用到所述通信数据而产生检验码,以及所述代码产生单元根据预定的标准,选择操作在所述第一模式和所述第二模式中的哪一个模式,以产生所述检验码。
11.如权利要求10所述的接收装置,其中所述代码产生单元从所述第一模式和所述第二模式中选择预定用于所述通信数据的模式,作为所述预定的标准。
12.如权利要求11所述的接收装置,其中所述预定的代码转换是根据循环冗余检验、哈希函数以及检验和中之一的代码转换。
13.一种用于从发送装置接收通信数据的集成电路,包括保存单元,用于保存与所述发送装置共有的秘密信息;接收单元,用于接收其上附有检验码的所述通信数据;代码产生单元,用于使用所述秘密信息转换所述接收的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;以及检验单元,用于通过将所述接收的检验码和所述产生的检验码进行比较,检验所述通信数据中是否发生错误。
14.一种用于传送其上附有检验码的通信数据的传送装置,包括存储单元,用于存储有关预定的接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有所述检验码的所述通信数据;传送单元,用于根据所述标识信息,判断是否对所述接收的通信数据执行错误检验,并且当要执行错误检验时,使用所述检验码执行所述错误检验,如果在所述通信数据中没有发现错误,则将所述通信数据传送到所述接收装置,当不执行错误检验时,在没有执行所述错误检验的情况下将所述通信数据传送到所述接收装置。
15.如权利要求14所述的传送装置,其中所述传送单元包括代码产生子单元,用于当要执行错误检验时,将预定的代码转换应用到所述通信数据,从而产生检验码;以及检验子单元,用于判断所述产生的检验码和所述接收的检验码是否等同,并且当判断所述检验码等同时,传送所述通信数据,当判断所述检验码不等同时,丢弃所述通信数据。
16.一种用于传送其上附有检验码的通信数据的集成电路,包括存储单元,用于存储有关预定的接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有所述检验码的所述通信数据;以及传送单元,用于根据所述标识信息,判断是否对所述接收的通信数据执行错误检验,以及当要执行错误检验时,使用所述检验码执行所述错误检验,如果在所述通信数据中没有发现错误,则将所述通信数据传送到所述接收装置,当不执行错误检验时,在没有执行所述错误检验的情况下将所述通信数据传送到所述接收装置。
17.一种用于传送其上附有检验码的通信数据的传送装置,包括保存单元,用于保存与发送装置共有的秘密信息;存储单元,用于存储有关预定的接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有所述检验码的所述通信数据;代码产生单元,用于使用所述秘密信息转换所述接收的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;检验单元,用于通过比较所述接收的检验码和所述产生的检验码,检验所述通信数据中是否发生错误;传送判断单元,用于根据所述标识信息,判断是否允许传送所述通信数据;以及传送单元,当所述检验单元确定未发生错误,并且所述传送判断单元已判断允许传送所述通信数据时,传送所述通信数据。
18.如权利要求17所述的传送装置,其中所述保存单元还保存与所述接收装置共有的秘密信息,并且所述传送单元使用与所述接收装置共有的所述秘密信息转换所述通信数据,从而产生转换数据,将预定的代码转换应用到所述转换数据,从而产生检验码,并且将其上附有所述产生的检验码的所述通信数据传送到所述接收装置。
19.一种用于传送其上附有检验码的通信数据的集成电路,包括保存单元,用于保存与发送装置共有的秘密信息;存储单元,用于存储有关预定的接收装置的标识信息;接收单元,用于接收由发送装置发送并去往接收装置的其上附有所述检验码的所述通信数据;代码产生单元,用于使用所述秘密信息转换所述接收的通信数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码;检验单元,用于通过比较所述接收的检验码和所述产生的检验码,检验所述通信数据中是否发生错误;传送判断单元,用于根据所述标识信息,判断是否允许传送所述通信数据;以及传送单元,当所述检验单元确定未发生错误,并且所述传送判断单元已判断允许传送所述通信数据时,传送所述通信数据。
20.一种内容分发系统,包括内容分发装置和内容使用装置,所述内容分发装置包括分发方保存单元,用于保存第一秘密信息,所述第一秘密信息等同于由所述内容使用装置保存的第二秘密信息;分发方产生单元,用于使用所述第一秘密信息转换请求数据,从而产生转换数据,并将第一预定代码转换应用到所述产生的转换数据,从而产生检验码,所述请求数据用于请求所述内容使用装置发送响应数据;发送单元,用于发送处于未转换状态的、其上附有所述产生的检验码的所述请求数据;以及分发单元,用于当从所述内容使用装置接收到所述响应数据时,分发内容到所述内容使用装置,以及所述内容使用装置包括使用方保存单元,用于保存所述第二秘密信息,所述第二秘密信息等同于由所述内容分发装置保存的所述第一秘密信息;接收单元,用于接收其上附有所述检验码的所述请求数据;使用方产生单元,用于使用所述第二秘密信息转换所述接收的请求数据,从而产生转换数据,并将等同于所述第一预定代码转换的第二预定代码转换应用到所述产生的转换数据中,从而产生检验码;检验单元,用于通过比较所述接收的检验码和由所述使用方产生单元产生的所述检验码,检验在所述请求数据中是否发生错误;以及响应单元,用于当所述检验单元已确定未发生错误时,解码所述请求数据,并发送响应数据给所述内容分发装置。
21.一种内容分发装置,用于分发内容给内容使用装置,包括保存单元,用于保存与所述内容使用装置共有的秘密信息;代码产生单元,用于使用所述秘密信息转换请求数据,从而产生转换数据,并将预定的代码转换应用到所述产生的转换数据,从而产生检验码,所述请求数据用于请求所述内容使用装置发送响应数据;发送单元,用于发送处于未转换状态的、其上附有所述产生的检验码的所述请求数据;以及分发单元,用于当从所述内容使用装置接收到响应数据时,分发内容给所述内容使用装置,所述内容使用装置已接收到所述发送的请求数据,并使用所述检验码判断在所述请求数据中未发生错误。
22.如权利要求21所述的内容分发装置,其中所述响应数据其上附有检验码,所述检验码已经通过以下方式在所述内容使用装置中产生,即,使用所述秘密信息转换所述响应数据,从而产生转换数据,并将预定的代码转换应用到所述转换数据,以及所述分发单元接收所述响应数据,并通过使用所述秘密信息转换所述响应数据,从而产生转换数据,应用所述预定的代码转换到所述转换的数据,从而产生检验码,并将所述附加的检验码与所述产生的检验码进行比较,来判断在所述响应数据中是否发生错误,当判断未发生错误时分发所述内容。
23.一种内容使用装置,用于从内容分发装置接收内容的分发,包括保存单元,用于保存与所述内容分发装置共有的秘密信息;接收单元,用于接收其上附有检验码并且通过所述内容分发装置发送的请求数据,所述请求数据用于请求发送响应数据;代码产生单元,用于使用所述秘密信息转换所述接收的响应数据,从而产生转换数据,并将预定的代码转换应用到所述转换数据,从而产生检验码;检验单元,用于通过将所述接收的检验码与所述产生的检验码进行比较,检验在所述请求数据中是否发生错误;以及响应单元,用于当所述检验单元确定未发生错误时,解码所述请求数据,并发送所述响应数据到所述内容分发装置。
24.如权利要求23所述的内容使用装置,其中所述响应单元使用所述秘密信息转换所述响应数据,从而产生转换数据,将所述预定的代码转换应用到转换数据,从而产生检验码,并且发送处于未转换状态的、其上附有所述检验码的所述响应数据。
全文摘要
服务器10和客户机20在各自的秘密信息保存单元13和23中保存共有秘密信息。服务器10中的服务器CRC单元14在添加秘密信息到通信数据中之后产生CRC码,并发送附有CRC码的通信数据。客户机20的客户机CRC单元24在添加秘密信息到通信数据中之后产生CRC码,并检验在通信路径上所述通信数据中是否发生错误。由于客户机20保存有秘密信息,客户机20确定没有发生错误,并获取所述通信数据。另一方面,没有保存秘密信息的路由器30不能获得所述通信数据。这防止了通信数据被传送至授权域以外的设备。
文档编号H04L1/00GK1836398SQ20048001238
公开日2006年9月20日 申请日期2004年4月28日 优先权日2003年5月7日
发明者山内弘贵, 松崎枣, 太田雄策, 布田裕一 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1