Acra. Features: Integrate data protection that fits your architecture
Tags: cryptography, security, database, encryption
Published: 2022-04-13 12:40:31

Acra wraps multiple data protection features into **convenient integration forms.** Your engineers can use Acra components in every cloud or on-prem and combine multiple components for the best security<>performance guarantees. 

> *[Use Acra Community Edition for free] (https://github.com/cossacklabs/acra). Check out [Acra Enterprise Edition] (https://www.cossacklabs.com/acra/#pricing) tailored for solutions with high security requirements.*

##Form-factors

Depending on your architecture and database choice, you might benefit from AcraServer (SQL proxy), AcraTranslator (API service), AnyProxy (gateway to all Acra features), client-side SDKs or any combination of them.

Read more about [typical dataflows built with Acra.] (https://docs.cossacklabs.com/acra/acra-in-depth/data-flow/)

##AcraServer

AcraServer is a SQL database proxy that exposes Acra’s functionality by **parsing traffic between an app and a database** and applying appropriate security functions.

💡 AcraServer provides transparent field-level encryption: **neither application nor database knows that the data is encrypted.** Just deploy AcraServer, direct your application to talk to it instead of the database, and change encryption data field format to binary.

![AcraServer. Acra by Cossack Labs](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ms9pm1mmi2p6093x937y.png)

> **AcraServer features:** encryption/decryption, encrypted search, data masking, tokenization, request firewall, logger, data leakage protection, authentication.

💡 AcraServer is the best for introducing all of Acra’s security functions into architecture in the least intrusive way. It works like a charm with applications that use SQL databases.

##AcraTranslator

AcraTranslator works as Encryption-as-a-Service, providing HTTP and gRPC API. The application sends API requests to the AcraTranslator with data fields and operations (encryption, decryption, tokenisation, detokenisation, etc). 
The application is responsible for storing the encrypted data in the database (NoSQL, KV store, SQL, AWS S3—any) and communicating with AcraTranslator to decrypt it back.

💡 Use AcraTranslator as an API server with any databases and any client-side applications. This layout is **useful for encrypting only a chosen subset of larger data structures** to attain optimal performance/security balance.

![AcraTranslator. Acra by Cossack Labs](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/80ikejrt0zrtv05ksckb.png)

>**AcraTranslator features:** encryption/decryption, encrypted search, tokenization, logger, data leakage protection, authentication.

💡 AcraTranslator is the best for running encryption/decryption at scale in stateless architectures. It requires only simple application modification. 

***
Acra allows different combinations of components—for example, build end-to-end encryption dataflow using client-side SDKs, or DAO-like encryption engine that works with multiple databases. Read more about [typical dataflows built with Acra.] (https://docs.cossacklabs.com/acra/acra-in-depth/data-flow/)

See what other features work for your peace of mind in Acra.😊