Chatbot System Using Ciphertext Policy Attribute-Based Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional chatbot systems fail to effectively control data utilization from external services, allowing unauthorized user terminals or chatbots to access and browse data despite lacking browse authority.
Innovation Solution
The chatbot system employs ciphertext policy attribute-based encryption (CP-ABE) to ensure that only user terminals with valid browse authority can decrypt and access data from external services, using a chat server to manage and enforce encryption policies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If conventional chatbot systems allow open data access from external services, then ease of operation and data accessibility are improved, but data security and authorization control deteriorate
Solution Approach 1:
The system performs preliminary encryption of data before it is transmitted through the chatbot system. The chatbot encrypts data acquired from external services using ciphertext policy attribute-based encryption (CP-ABE) before storing or transmitting it, ensuring that authorization control is established in advance rather than requiring complex access control mechanisms during data retrieval operations.
Solution Approach 2:
The system changes the state of data from plaintext to encrypted ciphertext form. By transforming data parameters through encryption, the system maintains data accessibility for authorized users while simultaneously ensuring security, as the encrypted form cannot be accessed or misused by unauthorized entities.
2Reliability
If the chatbot system implements encryption for all data, then data security is improved, but device complexity and computational overhead increase
Solution Approach 1:
The system applies different quality treatments to different data based on their sensitivity and access requirements. Not all data acquired from external services is encrypted with the same level of complexity - the chatbot determines which data requires encryption and applies appropriate encryption schemes selectively, reducing overall system complexity while maintaining necessary security.
Solution Approach 2:
The system introduces a key issuance station as an intermediary component that manages the complexity of key generation and distribution. This intermediary handles the computationally intensive aspects of CP-ABE key management separately from the chatbot, allowing the chatbot to focus on its core messaging function while security operations are delegated to a specialized component.
3Measurement precision
If the chatbot system uses CP-ABE encryption, then authorization control precision is improved, but ease of operation and system usability deteriorate
Solution Approach 1:
The system enables user terminals to autonomously determine their own authorization status by using their attribute-equipped secret keys to decrypt data. Users do not need to manually check permissions or go through complex authorization workflows - the CP-ABE encryption scheme automatically verifies authorization based on the user's attributes and the encryption policy, making the system self-verifying and easier to use despite the underlying complexity.
Data Source
AI summary
There is provided a chatbot system including a plurality of user terminals, a chatbot, and a chat server. The chatbot includes a memory and a processor configured to create a message from data which is acquired from an external service, receive, as an input, a list including a user ID of a user terminal which has utilization authority for the data, generate a policy-equipped ciphertext by an encryption algorithm of ciphertext policy attribute-based encryption, and transmit the policy-equipped ciphertext to the chat server, and each of the user terminals includes a memory and a processor configured to receive a policy-equipped ciphertext from the chat server and decrypt the policy-equipped ciphertext using an attribute-equipped secret key which is generated on the basis of a user ID of the user terminal.


