tutanota
Tuta is an email service with a strong focus on security and privacy that lets you encrypt emails, contacts and calendar entries on all your devices.
Top Related Projects
Monorepo hosting the proton web clients
Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network
🛡🛠 You are being watched. Protect your privacy against global mass surveillance.
A free & open modern, fast email client with user-friendly encryption and privacy features
Quick Overview
Tutanota is an open-source, end-to-end encrypted email service and application. It focuses on providing secure and private communication, with all data stored in encrypted form on Tutanota servers. The project includes both the server-side components and client applications for various platforms.
Pros
- Strong focus on privacy and security with end-to-end encryption
- Open-source, allowing for community review and contributions
- Cross-platform support (web, desktop, and mobile applications)
- User-friendly interface and easy-to-use encryption features
Cons
- Limited integration with other email services due to encryption focus
- Fewer features compared to some mainstream email providers
- Potential for data loss if encryption keys are lost or forgotten
- Free tier has limited storage and features compared to paid plans
Getting Started
To use Tutanota, follow these steps:
- Visit https://tutanota.com/
- Click on "Sign Up" to create a free account
- Choose a username and password
- Complete the registration process
- Start using the encrypted email service through the web interface or by downloading the appropriate app for your device
Note: For developers interested in contributing to the project, visit the GitHub repository at https://github.com/tutao/tutanota and follow the contribution guidelines provided in the README.md file.
Competitor Comparisons
Monorepo hosting the proton web clients
Pros of WebClients
- More active development with frequent updates and contributions
- Broader feature set, including calendar and drive functionality
- Extensive documentation and API support
Cons of WebClients
- Larger codebase, potentially more complex to navigate and maintain
- Less focus on mobile-first design compared to Tutanota
Code Comparison
Tutanota (TypeScript):
export function getEtId(mailAddress: string): Id {
return stringToCustomId(mailAddress.toLowerCase().trim())
}
WebClients (JavaScript):
export const normalizeEmail = (email) => {
return email.toLowerCase().replace(/\s/g, '');
};
Both projects use similar approaches for email normalization, but Tutanota's implementation includes trimming whitespace and converting to a custom ID format, while WebClients focuses on lowercase conversion and removing all whitespace.
Additional Notes
- Tutanota emphasizes simplicity and a streamlined user experience
- WebClients offers more integrations and third-party app support
- Both projects prioritize security and encryption, but with different implementation approaches
Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network
Pros of Berty
- Decentralized architecture, offering enhanced privacy and resistance to censorship
- Supports offline messaging through peer-to-peer communication
- Implements advanced cryptographic protocols for secure group messaging
Cons of Berty
- Still in development, with potential stability issues
- Smaller user base compared to more established messaging platforms
- May have a steeper learning curve due to its decentralized nature
Code Comparison
Tutanota (TypeScript):
export function encryptMessage(message: string, publicKey: Uint8Array): Uint8Array {
const symmetricKey = crypto.generateSymmetricKey();
const encryptedMessage = crypto.encryptSymmetric(message, symmetricKey);
const encryptedKey = crypto.encryptAsymmetric(symmetricKey, publicKey);
return concatUint8Arrays(encryptedKey, encryptedMessage);
}
Berty (Go):
func (p *Protocol) EncryptMessage(ctx context.Context, message []byte, groupPK []byte) ([]byte, error) {
group, err := p.getGroupContext(groupPK)
if err != nil {
return nil, errcode.ErrInvalidInput.Wrap(err)
}
return group.MessageKeystore().EncryptMessage(message)
}
Both projects focus on secure messaging, but Berty's decentralized approach offers unique advantages in terms of privacy and censorship resistance. However, Tutanota's more established platform may provide better stability and ease of use for the average user.
🛡🛠 You are being watched. Protect your privacy against global mass surveillance.
Pros of privacytools.io
- Comprehensive resource for privacy-focused tools and services
- Community-driven project with regular updates and contributions
- Covers a wide range of topics beyond just email privacy
Cons of privacytools.io
- Not a standalone application or service
- Less focused on a specific privacy solution
- May require more user effort to implement recommended tools
Code comparison
While a direct code comparison isn't relevant due to the different nature of these projects, we can look at how they structure their repositories:
privacytools.io:
- _includes/
- _layouts/
- assets/
- pages/
- _config.yml
- index.html
Tutanota:
- src/
- app-android/
- app-ios/
- build/
- package.json
- webpack.config.js
Tutanota is a full-fledged email application with client-side code, while privacytools.io is primarily a website with content and recommendations. Tutanota's repository reflects its nature as a software project, while privacytools.io is structured more like a static website or documentation project.
A free & open modern, fast email client with user-friendly encryption and privacy features
Pros of Mailpile
- Open-source and self-hostable, giving users full control over their email infrastructure
- Supports multiple email accounts and providers
- Offers a powerful search functionality and tagging system
Cons of Mailpile
- Development has slowed down in recent years
- Less user-friendly interface compared to Tutanota
- Requires more technical knowledge to set up and maintain
Code Comparison
Mailpile (Python):
def _decode_payload(self, part):
charset = part.get_content_charset() or 'utf-8'
try:
return part.get_payload(decode=True).decode(charset)
except UnicodeDecodeError:
return part.get_payload(decode=True).decode('utf-8', errors='replace')
Tutanota (TypeScript):
export function decryptMailBody(
body: string,
mailBodyKey: Uint8Array,
encryptedAttachments: ReadonlyArray<TutanotaFile>,
): Promise<string> {
return aes128Decrypt(mailBodyKey, body, true).then((decrypted) => {
return replaceCidsWithInlineImages(decrypted, encryptedAttachments)
})
}
The code snippets show different approaches to handling email content. Mailpile focuses on decoding payloads with various character encodings, while Tutanota emphasizes encryption and decryption of mail bodies, reflecting their respective priorities in email handling and security.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Tuta Mail is the secure email service with built-in end-to-end encryption that enables you to communicate securely with anyone on all your devices.
- Forum for bug reports/feature requests: https://www.reddit.com/r/tutanota
- Roadmap: https://tuta.com/roadmap/
- Issue and feature tracker: https://github.com/tutao/tutanota/issues. Please submit your feature requests via Reddit or via support mail.
Building
See BUILDING.md.
Developing Tuta Mail
See HACKING.md.
Top Related Projects
Monorepo hosting the proton web clients
Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network
🛡🛠 You are being watched. Protect your privacy against global mass surveillance.
A free & open modern, fast email client with user-friendly encryption and privacy features
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot