Commit 2aa469c7 authored by Mat's avatar Mat

Fix Markdown format

parent cd762827
# Searchitect-Searchable Encryption Framework
## Description of the Searchitect Framework:
#### Description of the Searchitect Framework:
This framework enables the integration of SE schemes.
#### General description of SE
### General description of SE
A SE scheme enables a server to search over an encrypted database on behalf of a client without revealing the content to the server.
A SE scheme provides 3 protocols:
1. Setup - First the client is indexing a document collection contained in a directory. This plaintext index gets encrypted by a specific implementation of an encryption scheme and uploaded to the server.
1. Setup - First the client is indexing a document collection contained in a directory. This plaintext index gets encrypted by a specific implementation of an encryption scheme and uploaded to the server.
2. Search - After Setup the client is able to search over the data by passing the keyword to the search protocol, which computes a search token which is sent to the server. This search Token enables the server to search over the encrypted data and return the resulting document matches. In resource hiding schemes these are encrypted and therfore a second Resolve procedure at the client is needed to decrypt document identifiers.
3. Update - Dynamic schemes support a update of the documents contained in the encrypted index.
#### Framework Architecture:
### Framework Architecture:
* Client/server architecture based on microservices
* SOA (service oriented architecture) based on RESTful webservices
#### Implementation:
## Implementation:
* Basic implementations
* searchitect-common - classes shared between server and client
* searchitect-client - common client implementation
......@@ -27,23 +30,27 @@ A SE scheme provides 3 protocols:
* searchitect-client-scheme-plugin
* searchitect-backend-scheme
#### The interface description of the gateway is after deployment available at:
### The interface description of the gateway is after deployment available at:
https://localhost:8433/swagger-ui.html
### Compile
## Compile
Run the following command in the top level directory
mvn clean install
## Deployment
### General deployment using Docker-compose
Docker enables a containerized easy deployment, the docker-compose configuration file is called docker-compose.yml.
docker-compose build
docker-compose up
### How to add a new scheme
## How to add a new scheme
1. Implement your scheme in a new searchitect-common-scheme project
2. Create a new searchitect-client-scheme-plugin project which implements the client plugin interface. This interface can be found in searchitect.common.client.ClientScheme
3. Create a new project which implements the searchitect-backend-scheme at the server side, take a look to the other implementations the interface of the controller needs to be similar
......
# Searchitect-Gate
### Functionality
* external interface of searchitect-Framework responsable for user management tasks and forwarding SE request to specific SE backend module
* works like a proxy by validating all request and on successful authentication and authorization forwarding the query
### Security implementation in searchitect gate
* Transport layer encryption via TLS - now selfsigned snakeoil certificate for testing
......@@ -19,9 +19,8 @@
keytool -importkeystore -srckeystore tomcat.keystore -destkeystore tomcat.keystore -deststoretype pkcs12
### Compile
execute the shell script in the root searchitect directory in a terminal window
./run.sh
......@@ -30,7 +29,6 @@ or compile each project on your own, has to be in the same order like the script
mvn clean install
### Deployment with docker
docker-compose build
......@@ -38,8 +36,4 @@ or compile each project on your own, has to be in the same order like the script
The interface description of the gateway is available calling following url in your browser
https://localhost:8433/swagger-ui.html
https://localhost:8433/swagger-ui.html
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment