Source: http://www.google.com/patents/US20020029278?ie=ISO-8859-1&dq=6,240,376
Timestamp: 2014-12-28 10:19:30
Document Index: 179224184

Matched Legal Cases: ['art 80', 'arts 80', 'art 80', 'art 31', 'art 80', 'art 80', 'art 80', 'art 80', 'art 80', 'art 80', 'art 80', 'art 90', 'art 90', 'art 90', 'art 90', 'art 11', 'art 12', 'art 12', 'art 11', 'art 12', 'art 12', 'art 12', 'art 12', 'art 80', 'art 31']

Patent US20020029278 - Virtual communication channel and virtual private community, and agent ... - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsA policy that relates attributes of an agent to a role is distributed to each agent on a network. A field connector generates an internal field in accordance with an instruction of a security manager. A ROLE manager uses attribute information from an attribute manager, and assigns each agent a ROLE in...http://www.google.com/patents/US20020029278?utm_source=gb-gplus-sharePatent US20020029278 - Virtual communication channel and virtual private community, and agent collaboration system and agent collaboration method for controlling the sameAdvanced Patent SearchPublication numberUS20020029278 A1Publication typeApplicationApplication numberUS 09/788,474Publication dateMar 7, 2002Filing dateFeb 21, 2001Priority dateSep 7, 2000Also published asUS7171441Publication number09788474, 788474, US 2002/0029278 A1, US 2002/029278 A1, US 20020029278 A1, US 20020029278A1, US 2002029278 A1, US 2002029278A1, US-A1-20020029278, US-A1-2002029278, US2002/0029278A1, US2002/029278A1, US20020029278 A1, US20020029278A1, US2002029278 A1, US2002029278A1InventorsMasatoshi Shiouchi, Tadashige Iwao, Makoto Okada, Shigeichiro Yamasaki, Takao Mohri, Yuji Wada, Takashi Nishigaya, Shigeki FukutaOriginal AssigneeMasatoshi Shiouchi, Tadashige Iwao, Makoto Okada, Shigeichiro Yamasaki, Takao Mohri, Yuji Wada, Takashi Nishigaya, Shigeki FukutaExport CitationBiBTeX, EndNote, RefManReferenced by (9), Classifications (11), Legal Events (4) External Links: USPTO, USPTO Assignment, EspacenetVirtual communication channel and virtual private community, and agent collaboration system and agent collaboration method for controlling the sameUS 20020029278 A1Abstract A policy that relates attributes of an agent to a role is distributed to each agent on a network. A field connector generates an internal field in accordance with an instruction of a security manager. A ROLE manager uses attribute information from an attribute manager, and assigns each agent a ROLE in accordance with the attributes of each agent, and installs a ROLE method table and a ROLE execution part. When receiving a message from an external network, each agent searches for a corresponding ROLE by referring to the ROLE method table, and executes the ROLE. Thus, collaboration among agents is realized through a virtual communication channel by means of the exchange of a message. Images(9) Claims(25)
BRIEF DESCRIPTION OF THE DRAWINGS [0028]FIG. 1 is a diagram showing an example of a part of a policy grammer used in the present invention. [0029]FIG. 2 schematically shows an exemplary structure of an agent collaboration system of Embodiment 1 according to the present invention. [0030]FIG. 3 is a flow chart illustrating exemplary generation of a virtual communication channel and a virtual private community for agents in the agent collaboration system of Embodiment 1 according to the present invention. [0031]FIG. 4A shows a conceptual state of generation of virtual private communities among agents; FIG. 4B shows a conceptual state of integration of virtual private communities among agents; FIG. 4C shows a conceptual state of division of a virtual private community among agents; and FIG. 4D shows a conceptual nested state of virtual private communities among agents. [0032]FIG. 5 schematically shows a concept of policy certification and ROLE accreditation in Embodiment 3 according to the present invention. [0033]FIG. 6 schematically shows an exemplary structure of an agent collaboration system of Embodiment 3 according to the present invention. [0034]FIG. 7 schematically shows an exemplary structure of an agent collaboration system of Embodiment 4 according to the present invention. [0035]FIG. 8 shows examples of recording media storing a processing program for realizing an object agent collaboration system of Embodiment 5 according to the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS [0036] Hereinafter, the present invention will be described by way of illustrative embodiments of an agent collaboration system with reference to the drawings. [0037] Embodiment 1 [0038] An agent collaboration system of Embodiment 1 controls a virtual communication channel among agents on a network. Each agent on the virtual communication channel has at least one role in accordance with attributes of each agent, based on a policy that is a collection of rules. A rule represents the relationship between the attributes of the agent and at least one role assigned in accordance with the attributes. In the case where execution conditions for the role contents such as receiving of a message are satisfied, each agent is allowed to collaborate by executing the corresponding role contents. The virtual communication channel of the present invention is controlled based on the policy, and virtually connects agents based on the policy, whereby collaboration among the agents can be achieved. Further, the virtual communication channel of the present invention provides a virtual private community among agents. [0039] Hereinafter, as an embodiment of the agent collaboration system of the present invention, a policy, roles (ROLE) assigned in accordance with the attributes of an agent, and LABEL information of a data object in the present invention will be described. Then, an exemplary structure and operation of the agent collaboration system, and states of dynamic generation, alteration, and self-destruction of a virtual communication channel will be described. [0040] First, the definitions and relationships of a policy, agent roles (ROLE), and LABEL information of a data object in the present invention will be described. [0041] The policy refers to a collection of rules describing the operation, characteristics, and relationship of a resource such as an agent or a data object on a virtual communication channel, and may be interpreted as a rule describing the operation, characteristics, and relationship of a virtual communication channel generated by collaboration among agents. There are a variety of rules described as a policy. A ROLE refers to a collection of roles regarding the operation on the virtual communication channel assigned in accordance with the attributes. A LABEL refers to a collection of reactions corresponding to the operation and the like of an agent on the virtual communication channel assigned in accordance with the attributes. For example, there is a rule describing the relationship between the ROLE and the ROLE and the relationship between the ROLE and the LABEL. Further, there is a rule describing the relationship between a collection of roles (ROLE) of an agent and a collection of reactions (LABEL) of a data object. Further, there is a rule describing the relationship between a collection of roles of an agent and another collection of roles (ROLE) of an agent. Further, the virtual communication channel itself is composed of a network of participating agents, so that generation, alteration, and self-destruction of the virtual communication channel can be described as part of the operation of an agent. Thus, the policy also contains a rule regarding the operation of the virtual communication channel containing generation, alteration, and self-destruction of the virtual communication channel. [0042] The agent collaboration system may utilize a server managing, in a centralized manner, a policy (i.e., policy repository server) on the network so that each agent can obtain a policy, as described in Embodiment 4 later. Further, the agent collaboration system may have processing in which each agent distributes its own created and certified policy on the network, and receives the policy (makes a contract), and agents that have obtained a ROLE based on the policy generate a virtual communication channel. The latter case may be referred to as an autonomously distributed agent collaboration system using a virtual communication channel. For example, it can be assumed that an agent desiring to distribute contents of an image database managed by the agent prescribes and distributes a policy including a rule describing the relationship between the attribute that an agent having made a contract of paying a certain fee and at least one role of downloading the contents of the image database. [0043]FIG. 1 shows an example of a policy. FIG. 1 shows exemplary description of a policy. Herein, an exemplary policy regarding simple image delivery service is shown. Reference numeral 1 denotes files to be distributed. Herein, �image.jar� represents a ROLE program file that is a program module including program codes with respect to all the roles in a policy and executing the roles, and �image.xml� represents a policy description file. Reference numeral 2 denotes a rule group for assigning a ROLE. In the rule group, there are descriptions of conditions for assigning a ROLE (i.e., specification of attributes and values thereof) (3 in FIG. 1), and a ROLE to be assigned when the conditions are satisfied (4 in FIG. 1). In the exemplary policy in FIG. 1, attributes regarding the payment of a registration fee is first paid attention to. If a registration fee has been paid, an agent will be assigned a ROLE of a registered user. On the contrary, in the case where a registration fee has not been paid, an agent will be assigned a ROLE for an unregistered user, as defined in the third item of the rule. Further, regarding a contract of whether or not an agent will become a provider of image contents, in the case where an agent has made a contract, the agent will be assigned a ROLE as a provider of image contents. A policy having such description of a policy is prepared, and each agent is provided with the policy, whereby a virtual communication channel controlled based on the description of a policy can be generated. The virtual communication channel thus generated provides a virtual private community among agents. [0044] The ROLE of an agent refers to a collection of roles assigned in accordance with the attributes of an agent, as described above. An agent operates in accordance with at least one assigned role, and executes collaboration together with another agent as part of the operation. In the ROLE, role contents that can be executed are determined, and execution conditions for executing the role contents are determined. Herein, there are various execution conditions, such as receiving of a particular message from a virtual communication channel, a shift of the status of an agent to a particular status, occurrence of a certain event, passage of a predetermined period of time from a certain event, etc. [0045] The LABEL information of a data object is a collection of reactions corresponding to the operation and the like of an agent assigned in accordance with the attributes of a data object, as described above. Examples of the LABEL information include enabling of reading, writing, and deletion of data contents by an agent having at least one predetermined role; and enabling of calculation, searching, and transfer by an agent having at least one predetermined role. [0046] Next, an exemplary structure of an agent collaboration system will be described. [0047]FIG. 2 schematically shows an exemplary structure of the agent collaboration system, wherein the exemplary internal structure of one agent is illustrated. In the agent collaboration system of the present invention, agents, which have the structure shown in FIG. 2, collaborate with each other through the network. The virtual communication channel of the present invention is a collaboration space (i.e., virtual private community) that is virtually formed on the network connecting the agents to each other. [0048] In FIG. 2, reference numeral 100 denotes an agent, 200 denotes an external network, and 210 denotes an internal field. Reference numeral 10 denotes an agent network connector, 20 denotes a security manager, 30 denotes a ROLE manager, 40 denotes an attribute manager, 50 denotes a ROLE program database, 60 denotes a field connector, 70 denotes a ROLE method table, and 80 denotes a ROLE execution part. [0049] In the above-mentioned structure of the agent 100, the security manager 20, the ROLE manager 30, the attribute manager 40, and the ROLE program database 50 are modules for generating, altering, and eliminating the internal field 210 based on a policy. The agent 100 has the field connector 60. The security manager 20 generates the internal field 210 on the field connector 60. Further, the ROLE manager 30, and the attribute manager 40 form the ROLE method table 70 and the ROLE execution part 80 connected to the internal field 210. In the example shown in FIG. 2, three internal fields 210 a to 210 c, ROLE method tables 70 a to 70 c, and ROLE execution parts 80 a to 80 c are generated. [0050] The internal field 210, the ROLE method table 70, and the ROLE execution part 80 are modules for executing actions in the case where role execution conditions are satisfied. For example, these modules allow the corresponding ROLE to react when a particular message is received from the external network 200, thereby executing it. The other agents are not shown in FIG. 2. The other agents can be configured in the same way as in the agent 100 [0051] Each module will be described. The network agent connector 10 provides a communication interface for connecting the agent 100 to the external network 200. The network agent connector 10 receives a message from the external network 200, and determines whether the message is sent to the security manager 20 or the field connector 60 in accordance with the type of the message. In the case where the received message is the message regarding generation, alteration, and self-destruction of a field, such as a field generation message, a field searching message, and a field destruction message, the received message is sent to the security manager 20. In the case where the received message is a field message regarding agent collaboration, the message is sent to the field connector 60. [0052] The security manager 20 has a function of confirming the validity of a message when receiving a message regarding generation, alteration, and self-destruction of a field; a function of interpreting the message contents and executing generation, alteration, and self-destruction of the internal field 210 in accordance with the instruction of generation, alteration, and self-destruction of a filed; and a function of extracting a policy from the message. The function of confirming the validity of a message is required for enhancing the security of the agent collaboration system of the present invention. Regarding the function of executing generation, alteration, and destruction of the internal field 210, the field connector 60 becomes a point for connecting the generated internal field 210 to the external network 200, and the generation, alteration, or destruction of the internal field 210 is executed by the security manager 20. Due to the function of extracting a policy from a message, the policy as shown in FIG. 1 is extracted and given to the ROLE manager 30. [0053] The ROLE manager 30 is installed as a role assignment part. The ROLE manager 30 interprets the policy received from the security manager 30, checks the attributes of an agent, and controls the generation and elimination of a ROLE. In order to refer to the attributes specified in the attribute condition part of each rule in the policy and the values thereof and the attributes of an agent and the values thereof, the ROLE manager 30 inquires of the attribute manager 40 about the attributes and the values thereof. When the ROLE manager 30 receives an answer from the attribute manager 40, and the conditions for the rule are satisfied, the ROLE manager 30 notifies the ROLE method table 70 of a ROLE name, and gives an instruction regarding generation of the ROLE method table 70 or the alteration of the contents thereof. The ROLE manager 30 includes a policy storing part 31 for storing a policy. [0054] The attribute manager 40 includes an attribute database 41. The attribute manager 40 refers to the attribute database 41 in response to the inquiry from the ROLE manager 30 about the attributes of an agent and the values thereof, and replies to the inquiry. [0055] The ROLE program database 50 stores a program for installing the ROLE execution part 80. When the ROLE execution part 80 is installed, a required program is retrieved from the ROLE program database 50 and configured as a ROLE execution part. The ROLE program may be present out of the network, as long as it can be accessed and downloaded. [0056] The internal field 210 is generated, altered, or self-destroyed in accordance with an instruction from the security manager 20. If there is an instruction of generation of the internal field 210, a new internal field is generated on the field connector 60. Similarly, if there is an instruction of destruction of the existing internal field 210, the field connector 60 destroys the internal field 210. [0057] Regarding the execution processing of the actions in the case where the role execution conditions such as receiving of a message are satisfied, each field connector 60 of each agent receives a field message from the agent network connector 10 and inspects the contents and attributes of the field message. Only an appropriate field connector 60 accepts the field message and sends the field message to appropriate internal field(s) 210 (=one or some of 210 a to 210 c). Further, the field connector 60 receives a response message returned as part of the execution processing of the ROLE execution part 80, and sends the response message to the external network 200 through the agent network connector 10. [0058] The ROLE method table 70 is installed as a role-execution condition storing part. The ROLE method table 70 receives an instruction from the ROLE manager 30, and generates a table or alters the contents thereof. In generation of an internal field, the ROLE method table 70 is notified of a ROLE name from the ROLE manager 30, retrieves an appropriate ROLE from a ROLE program collection, associates an appropriate method with the specified ROLE, and stores the ROLE. Further, the ROLE method table 70 associates the ROLE with execution conditions, and stores the ROLE in the table. Next, regarding the execution processing of the actions in the case where the role execution conditions such as receiving of a message are satisfied, the ROLE method table 70 is inquired by the field connector 60, which has detected the conditions such as receiving of a field message, generation of various events, and alteration of an agent status, about whether or not there is a ROLE having any of these conditions as execution conditions. In the case where there is the corresponding ROLE, the ROLE method table 70 specifies a method for controlling the ROLE, and notifies the field connector 60 of the method. [0059] Next, the ROLE execution part 80 receives an instruction from the ROLE manager 30, retrieves an appropriate ROLE from the ROLE program database 50, and stores them. Then, regarding the execution processing of the actions in the case where the role execution conditions such as receiving of a message are satisfied, the ROLE execution part 80 responses to a field message, and when a particular method is activated by the field connector 60, executes the ROLE contents corresponding to the method. In contrast, when the execution conditions are not satisfied, execution of the corresponding ROLE is terminated under the control of the method. [0060] The operation of the agent collaboration system in the above-mentioned exemplary structure will be described with reference to a flow chart in FIG. 3. In the following example, the case will be described in which receiving of a particular field message is prescribed as ROLE execution conditions. For convenience of description of the flow chart in FIG. 3, the agent network connector, the field connector, the security manager, the ROLE manager, and the attribute manager are abbreviated as ANC, FC, SM, RM, and AM, respectively. [0061] First, the agent network connector 10 monitors the external network 200 to receive data (Operation 301). [0062] When the agent network connector 10 receives data from the external network 200 (Operation 301: Y), the agent network connector 10 checks if the data is a field message (Operation 302). [0063] In the case where the data is a field message (Operation 302: Y), the agent network connector 10 extracts a field name from the field message, and transfers it to the corresponding field connector 60 (Operation 303). [0064] The field connector 60 refers to the ROLE method table 70, and searches for a ROLE whose execution conditions is to receive a message (Operation 304). In the case where there is the corresponding ROLE (Operation 304: Y), a method for processing the ROLE is activated, and the ROLE is executed (Operation 305). Then, the process returns to Operation 301. In the case where there is no corresponding ROLE (operation 304: N), the ROLE does not react and is not executed. Then, the process returns to Operation 301. [0065] Next, in Operation 302, in the case where received data is not a field message (Operation 302: N), the agent network connector 10 transfers the data to the security manager 20, and the security manager 20 checks if the received data is a new field generation message (Operation 306). [0066] In the case where the received data is a new field generation message (Operation 306: Y), the security manager 20 extracts a policy from the received message, and transfers it to the ROLE manager 30 (Operation 307). The role manger 30 inquires the attribute manager 40 about the attributes described in a policy and the values thereof, and determines a ROLE assigned to an agent based on the response results from the attribute manager 40 (Operation 308). [0067] The ROLE manager 30 generates the field connector 60 in response to the field generation message, and notifies the field connector 60 of a ROLE name to be provided and the contents thereof (Operation 309). In order to install the notified ROLE contents, the ROLE manager 30 loads the corresponding ROLE from the ROLE program collection to the ROLE execution part 80, and installs a required ROLE execution module and the internal field 210 (Operation 310). When the internal field 210 is generated, the process appropriately returns to Operation 301. [0068] Next, in Operation 306, in the case where the received data is not a new field generation message (Operation 306: N), the security manager 20 checks if the received data is a field searching message (Operation 311). In the case where the received data is a field searching message (Operation 311: Y), the security manager 20 extracts field searching conditions from the message contents, and returns the field name corresponding to the searching conditions to the sender of the search message through the agent network connector 10 (Operation 312). Thereafter, the process appropriately returns to Operation 301. [0069] In the case where the received data is not a filed searching message (Operation 311: N), the security manager 20 checks if the received message is a field destruction message (Operation 313). In the case where the received message is a field destruction message (Operation 313: Y), the security manager 20 extracts the name of a field to be destroyed from the field destruction message, and notifies the field connector 60 of the destruction of the field (Operation 314). The field connector 60 destroys the specified internal field 210 managed by the field connector 60 (Operation 315). Along with the destruction of the internal field 210, the corresponding ROLE method table 70 and the ROLE execution part 80 are eliminated. After the destruction of the field, the process appropriately returns to Operation 301. [0070] In the case where the received message is not a field destruction message (Operation 313: N), an effective response to the received data is not conducted in this example, and the process returns to Operation 301, and next receiving of data is awaited. [0071] The generation, alteration, and destruction of a virtual communication channel by the agent collaboration system of Embodiment 1 and an exemplary flow of the agent collaboration operation using the generated virtual communication channel have been described above. [0072] Thus, the agent collaboration system and virtual communication channel connecting agents to each other of Embodiment 1 are controlled based on a policy that is a collection of rules, each representing the relationship between the attributes of an agent and the role assigned in accordance with the attributes, and can virtually connect the agents based on the policy, provide a virtual private community among agents, and broker the collaboration among the agents. [0073] Embodiment 2 [0074] In Embodiment 2, the case will be described in which a virtual communication channel can be defined and controlled so as to provide a variation of a virtual private community among agents. [0075] The exemplary structure of the agent collaboration system is the same as that shown in FIG. 2. Therefore, the description thereof will be omitted here. [0076] First, in the agent collaboration system of Embodiment 2, virtual private communities for agents can be provided in an independent manner. In this case, the security manager 20 and the ROLE manager 30 generate and manage independent internal fields 210 based on a policy, and allows agents to collaborate with each other by execution of a ROLE, whereby independent virtual private communities for agents are provided on a virtual communication channel. FIG. 4A shows a conceptual state of generation of independent virtual private communities for agents. [0077] Second, in the agent collaboration system of Embodiment 2, it is possible to integrate virtual private communities for agents generated in an independent manner. In this case, by giving an instruction of integrating fields selected from internal fields 210 generated and managed in an independent manner by the security manger 20 and the ROLE manager 30, the corresponding field connector can be regenerated as one field connector, and one internal field is regenerated. Thus, a virtual private community for agents is generated in such a manner that the existing two independent virtual private communities for agents are integrated. FIG. 4B shows a conceptual state of integration of independent virtual private communities for agents. [0078] Third, in the agent collaboration agent of Embodiment 2, it is possible to divide the existing virtual private community for agents. In this case, the security manager 20 and the ROLE manager 30 give an instruction of generation of one field and the other field after division, whereby the respective corresponding field connectors are generated, and the respective internal fields are also generated. FIG. 4C shows a conceptual state of division of the virtual private community for agents. [0079] Fourth, in the agent collaboration system of Embodiment 3, it is also possible to set the virtual private community for agents as a parent, and generate a virtual private community for agents corresponding to a child in a so-called nested state. In this case, the security manager 20 and the ROLE manager 30 give an instruction of generation of a parent field and a child field, whereby the parent field and the child field are generated. FIG. 4D shows a conceptual nested state of the virtual private community for agents. [0080] As described above, according to the agent collaboration system of Embodiment 2, a virtual private community for agents to be generated based on a policy can be provided with a variation. Embodiment 3 [0081] In Embodiment 3, an exemplary structure of the agent collaboration system will be described in which security is enhanced regarding policy certification for ensuring the authenticity of a policy, ROLE accreditation for ensuring the authenticity of a ROLE, safe distribution of a policy by log-in chain in the case of a complete autonomous distributed structure, processing against unauthorized access, confirmation of agent collaboration, and the like. [0082] First, policy certification for ensuring the authenticity of a policy, and ROLE accreditation for ensuring the authenticity of a ROLE will be described. Then, processing will be described in which each agent receives a certified authentic policy, is assigned a correctly accredited ROLE, and participates on a virtual communication channel. [0083]FIG. 5 schematically shows a concept in which policy certification for ensuring the authenticity of a policy, and ROLE accreditation for ensuring the authenticity of a ROLE are conducted. In FIG. 5, reference numeral 5 denotes a PAA that is an authority entity for issuing a policy certification, 6 denotes an AA that is an authority entity for issuing an attribute certification, and 7 denotes a CA that is an authority entity for authenticating an individual and for issuing a public key certification. Stricter security is provided to generation of a virtual communication channel in a large distributed environment and exchange of information using the virtual communication channel by providing three authority entities so that different authority functions are dispersed regarding three aspects: policy authentication, attribute authentication, and individual authentication, whereby. [0084] The policy certification refers to data describing a policy provided with an electronic signature. That is, the policy certification is used for certifying that a policy is an authentic one, rightfully distributed on the network. The policy certification is distributed to an agent and the like through the network. Due to a certain policy certification, a virtual network region where the identical policy is propagated becomes a trust domain (i.e., a virtual private community formed by a virtual communication channel). When a new agent tries to join a certain trust domain to participate on a virtual communication channel, it is required that the agent first receives a corresponding policy certification, agrees to the contents thereof, and is assigned at least one role based on the policy certification. [0085] The attribute certification is used for the attribute authority 6 authenticating individual attributes to certify the attributes of each agent. For example, the attribute certification is described in accordance with ITU-TX.509 attribute certification. In issuing an attribute certification by the attribute authority 6, the attribute authority 6 can refer to the attributes of each agent by accessing the attribute database 41 of each agent shown in FIG. 2. [0086] The public key certification is used for authenticating an individual on the network. The public key certification is issued by the certification authority 7 that is an authority entity for authenticating an individual, for example, on the basis of a public key authentication base such as ITU-TX.509 public key certification. [0087] Next, processing will be described in which each agent receives a certified authentic policy and is assigned a rightfully accredited ROLE. [0088] In FIG. 5, reference numeral 8 denotes a trust engine provided to each agent. The trust engine 8 interprets an input policy certification and attribute certification propagated on the network, and specifies and assigns an appropriate ROLE corresponding to the policy certification and the attribute certification. The trust engine provided to each agent is composed of the ROLE manager 30 and the attribute manager 40 as a complex function in each agent structure described in Embodiment 1 with reference to FIG. 2. [0089] In the authentication system in Embodiment 3, each agent is provided with the trust engine 8, and the trust engine 8 safely interprets a policy certification and an attribute certification issued based on the reliability of the policy approving authority 5, the attribute authority 6, and the certification authority 7, and assigns a ROLE. The assigned ROLE is provided with a ROLE credential, whereby the validity of the ROLE is accredited. The validity of the trust engine itself can be verified, for example, by cross-authentication by the SSL and verification of an object signature, on the basis of the public key authentication base. Thus, the validity of the ROLE credential generated by the trust engine can also be guaranteed. [0090] Based on the generated ROLE credential, a ROLE is assigned in each agent under the control of the ROLE manager. [0091] A policy is certified and a ROLE is accredited based on the above-mentioned authentication system, and a virtual communication channel is generated and controlled with stricter security and each agent can safely enter the virtual communication channel. [0092] Next, safe policy distribution by a log-in chain will be described in the case of a complete autonomous distribution structure. An agent participating on a virtual communication channel, through which the identical policy is propagated, can arbitrarily enter therein, and participants thereof will dynamically change. In the case where the agent collaboration system controlling a virtual communication channel of the present invention as a distribution type system, there is no particular agent for centralized authenticity management whose authenticity is guaranteed. Therefore, an agent trying to newly participate on a virtual communication channel requests log-in with respect to an arbitrary agent that has already participated on the virtual communication channel. The log-in to the virtual communication channel by each agent is conducted based on attribute information and a policy of each agent as shown in FIG. 5, and an agent is assigned a ROLE as the result of the log-in. Herein, as the trust engine 8 conducting ROLE assignment at log-in, the one operated on an agent that has already participated in a trust domain is not used, but the one operated on an agent trying to newly participate therein is used. Because of this, safe log-in processing can be conducted without notifying the others of attribute information that is kind of privacy information and without decreasing the security of the entire virtual communication channel. A log-in chain of each agent allows a policy to be safely propagated via log-in without using a centralized management system, and each agent can log in or log out at any time with respect to the virtual communication channel. [0093] Next, processing of eliminating a virtual communication channel in accordance with unauthorized access or a request from a participant will be described. In this processing, it is checked whether or not a message is exchanged among agents in a predetermined manner, and collaboration is normally conducted, and it is further checked whether or not there is unauthorized access; in the case where there is unauthorized access, a virtual communication channel is dynamically self-destroyed. FIG. 6 shows an exemplary structure of an agent collaboration system in which an exchange of a message among agents is confirmed, and unauthorized access is detected. The description of the same components as those described in Embodiment 1 with reference to FIG. 2 will be omitted here. [0094] As shown in FIG. 6, an agent 100 a has an agent collaboration confirming part 90. Further, as one of processing functions, upon receiving a message, each agent returns acknowledgement to a virtual communication channel. The agent collaboration confirming part 90 monitors a message sent through the virtual communication channel via an agent network connector 10, and confirms a request message sent from an agent. Thereafter, the agent collaboration confirming part 90 continues to monitor a message, and monitors an acknowledgement message of another agent that has received the request message, thereby confirming that the request message has been received. In this manner, a message sent through the virtual communication channel and acknowledgement with respect to the message are monitored by using the agent collaboration confirming part 90, whereby it is confirmed that brokering of information among agents is normally conducted, and collaboration among agents is normally conducted. [0095] The agent network connector 10 includes an access right managing part 11 and an unauthorized access detecting part 12. [0096] The unauthorized access detecting part 12 detects unauthorized access to a virtual communication channel. There are various methods for detecting fraud. For example, if an agent accesses the virtual communication channel in violation of the contents of access right managed by the access right managing part 11, and transmits/receives a message, the unauthorized access detecting part 12 detects that there has been unauthorized access. Further, for example, the unauthorized access detecting part 12 has a function of detecting tampering of a message. The unauthorized access detecting part 12 checks if an electronic signature is not broken in the case where an electronic signature is embedded in a message, checks if there is any abnormality in an electronic watermark in the case where an electronic watermark is embedded in a message, checks if a message that does not comply with a ROLE has been received, and checks if an agent accesses a data object by a method that does not comply with the qualification of the agent, thereby detecting unauthorized access. [0097] When detecting unauthorized access, the unauthorized access detecting part 12 notifies the security manager 20 of an instruction of eliminating a field, and the security manager 20 destroys an internal field in which unauthorized access has been attempted, and brakes connection with the external network 200. [0098] The destruction of the virtual communication channel can also be requested by an agent's initiative. For example, in the case where a ROLE and the like of a ROLE execution part 80 request destruction of a virtual communication channel, the agent network connector 10 is notified of the request through the field connector 60, and the agent network connector 10 instructs the security manager 20 to destroy the corresponding virtual communication channel. The security manager 20 destroys the corresponding internal field. [0099] Further, it is also possible that an expiration date is set with respect to the virtual communication channel so as to destroy it. For example, the security manager 20 or the field connector 60 has a timer, and detects whether or not an expiration date has come, using the timer; if it is detected that the expiration date has come, the corresponding internal field 210 is self-destroyed based on an instruction from the security manager 20, or the field connector 60 having detected that the expiration date had come destroys the corresponding internal field 210 automatically. [0100] Further, the agent collaboration system of Embodiment 3 can also enhance security by encoding a message exchanged among agents. Agents have both an encoding function for a transmitted message and a decoding function for a received message, thereby executing encoding/decoding of a message for each transmission/receiving of a message. It can be determined, for example, based on a ROLE to be used, which encoding key and decoding key are used. [0101] As described above, in the agent collaboration system of Embodiment 3, security can be enhanced regarding policy certification for ensuring the authenticity of a policy, ROLE accreditation for ensuring the authenticity of a ROLE, encoding/decoding of a message exchanged in collaboration among agents, management of access right to a virtual communication channel by each agent, processing with respect to unauthorized access, confirmation of agent collaboration, and the like. [0102] Embodiment 4 [0103] In the agent collaboration system of Embodiment 4, regarding distribution of a policy, a policy repository server is provided. [0104]FIG. 7 is an exemplary structure of an agent collaboration system provided with the policy repository server in Embodiment 4. Reference numeral 300 denotes a policy repository server, which stores policies. [0105] When an agent 100 b generates a virtual communication channel or participates on an existing virtual communication channel, the agent 100 b has to obtain a policy describing a target virtual communication channel, and generate a ROLE based on the policy. The agent 100 b accesses the policy repository server 300, and requests transmission of a target policy. The policy repository server 300 transmits the corresponding policy from the stored policies to the requesting agent 100 b. The agent 100 b having received the policy passes the policy to a security manager 20 via an agent network 10. The security manager 20 extracts the policy and passes it to a ROLE manger 30. The ROLE manager 30 stores the policy in a policy storing part 31. In this case, the security manger 20 and the ROLE manager 30 generate the corresponding internal field based on the received policy, which is the same as that in Embodiment 1. [0106] As described above, the agent collaboration system of Embodiment 4 is provided with a policy repository server that can uniformly manage and distribute a policy, thereby distributing a policy to an agent that does not have any policy, and distributing an updated policy to an agent in the case where the policy is updated. [0107] Embodiment 5 [0108] The object agent collaboration system of the present invention can be generated, using various computers, by storing a program describing processing steps of realizing the above-mentioned structure in a computer-readable recording medium. Examples of the recording medium storing a program describing processing steps of realizing the object agent collaboration system of the present invention include a recording medium 1000 in a recording apparatus on the network, and a recording medium 1005 such as a hard disk and a RAM of a computer, as well as a portable recording medium 1001 such as a CD-ROM 1002 and a flexible disk 1003. In execution, the program is loaded onto a computer 1004, and executed on a main memory. [0109] In addition to a compiled source program, it may also be possible that a so-called Aplet in an intermediate language format is transmitted to a client computer through a network, and an interpreter execution is processed on the client computer. [0110] The invention may be embodied in other forms without departing from the spirit or essential characteristics thereof. The embodiments disclosed in this application are to be considered in all respects as illustrative and not limiting. The scope of the invention is indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are intended to be embraced therein. Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7254604 *Jul 31, 2002Aug 7, 2007Nissan Motor Co., Ltd.Distributed information collecting systemUS7363650 *Sep 13, 2002Apr 22, 2008Bea Systems, Inc.System and method for incrementally distributing a security policy in a computer networkUS7392375 *Sep 18, 2002Jun 24, 2008Colligo Networks, Inc.Peer-to-peer authentication for real-time collaborationUS8121057Oct 29, 2004Feb 21, 2012Twisted Pair Solutions, Inc.Wide area voice environment multi-channel communications system and methodUS8751580 *Jul 7, 2010Jun 10, 2014Thomas OwenReal-time communication and information collaboration systemUS8787383Jan 16, 2013Jul 22, 2014Twisted Pair Solutions, Inc.Method, apparatus, system, and article of manufacture for providing distributed convergence nodes in a communication network environmentUS20110282981 *May 11, 2010Nov 17, 2011Alcatel-Lucent Canada Inc.Behavioral rule resultsUS20130198290 *Jul 7, 2010Aug 1, 2013Owen P. ThomasReal-time communication and information collaboration systemEP1988486A2 *Mar 12, 2008Nov 5, 2008Novell, Inc.Virtualized federated role provisioning* Cited by examinerClassifications U.S. Classification709/229, 709/204International ClassificationH04L12/24, H04L29/06Cooperative ClassificationH04L63/1416, H04L63/104, H04L63/0823, H04L41/046, H04L2463/102European ClassificationH04L63/10C, H04L63/08CLegal EventsDateCodeEventDescriptionSep 12, 2014REMIMaintenance fee reminder mailedJul 1, 2010FPAYFee paymentYear of fee payment: 4May 22, 2007CCCertificate of correctionFeb 21, 2001ASAssignmentOwner name: FUJITSU LIMITED, JAPANFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHIOUCHI, MASATOSHI;IWAO, TADASHIGE;OKADA, MAKOTO;AND OTHERS;REEL/FRAME:011563/0055Effective date: 20010214RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google