Code Monkey home page Code Monkey logo

ente-io / ente Goto Github PK

View Code? Open in Web Editor NEW
7.5K 26.0 471.0 484.04 MB

Fully open source, End to End Encrypted alternative to Google Photos and Apple Photos

Home Page: https://ente.io

License: GNU Affero General Public License v3.0

Kotlin 0.05% Ruby 0.08% Swift 0.07% Objective-C 0.01% Dart 48.18% CMake 0.28% C++ 0.43% C 0.02% HTML 4.97% JavaScript 0.19% CSS 0.17% Shell 0.19% Go 15.50% Dockerfile 0.03% TypeScript 29.55% PLpgSQL 0.22% Inno Setup 0.06%
android ios e2ee encryption end-to-end-encryption google-photos-alternative opensource photos privacy privacy-tools 2fa zero-knowledge google-photos flutter golang typescript authy

ente's Introduction

Fully open source end-to-end encrypted photos, authenticators and more.

Ente

Ente is a service that provides a fully open source, end-to-end encrypted platform for you to store your data in the cloud without needing to trust the service provider. On top of this platform, we have built two apps so far: Ente Photos (an alternative to Apple and Google Photos) and Ente Auth (a 2FA alternative to the deprecated Authy).

This monorepo contains all our source code - the client apps (iOS / Android / F-Droid / Web / Linux / macOS / Windows) for both the products (and more planned future ones!), and the server that powers them.

Our source code and cryptography have been externally audited by Cure53 (a German cybersecurity firm, arguably the world's best), Symbolic Software (French cryptography experts) and Fallible (an Indian penetration testing firm).

Learn more at ente.io.


Ente Photos

Screenshots of Ente Photos

Our flagship product. 3x data replication. On device machine learning. Cross platform. Private sharing. Collaborative albums. Family plans. Easy import, easier export. Background uploads. The list goes on. And of course, all of this, while being fully end-to-end encrypted.

Ente Photos is a paid service, but we offer a free trial. You can also clone this repository and choose to self host.



Ente Auth

Screenshots of Ente Photos

Our labour of love. Two years ago, while building Ente Photos, we realized that there was no open source end-to-end encrypted authenticator app. We already had the building blocks, so we built one.

Ente Auth is currently free. If in the future we convert this to a paid service, existing users will be grandfathered in.



Contributing

Want to get aboard the Ente hype train? Welcome along! Don't hesitate if you're not a developer, there are many other important ways in which you can contribute.

Support

We are never more than an email away. For the various ways to ask for help, please see our support guide.

Community

Ente's Mascot, Ducky,
inviting people to Ente's source code repository

Please visit our community page for all the ways to connect with the community.

Discord Ente's Blog RSS

Twitter   Mastodon


Security

If you believe you have found a security vulnerability, please responsibly disclose it by emailing [email protected] or using this link instead of opening a public issue. We will investigate all legitimate reports. To know more, please see our security policy.

ente's People

Contributors

0nullpointer avatar aakankshabhende avatar abhinavkgrd avatar ananddubey01 avatar ashilkn avatar crowdin-bot avatar dependabot[bot] avatar eseltwift avatar github-actions[bot] avatar greeeen-dev avatar httpjamesm avatar i-aiymen avatar iamgitcat avatar imzxhir avatar jamsrepos avatar jishnuraj9 avatar jubitjohn avatar laurenspriem avatar lyonelf avatar mnvr avatar muhesh7 avatar naveenchand06 avatar prateekmedia avatar pushkar8723 avatar rushitote avatar shaileshpandit avatar shivamhp avatar ua741 avatar vishnukvmd avatar vs704vs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ente's Issues

Stream decrypted buffer on the fly

Related to this suggestion.
Currently download, decrypt and file view are sequential operations, i.e each operation runs for the full file before the next can begin. While this is relatively fine for images, viewing videos is currently not optimal, especially for large files.

An alternative would be to stream buffers in all the 3 operations in parallel threads. Ente encrypts in blocks of size 4MB, so each operation can chain the response in blocks of decryptionChunkSize bytes to the next one without waiting for the complete file.

Implementing cache could be relatively trickier, especially with remote seek being possible now. Maybe this could be shipped as a beta feature which disables video controls until cache is implemented for buffers. IMO even without cache, progressive video playing is a huge win.

Note: The same buffer loading could be reused for images too.

Upload cancellation not working

From ente-io/photos-desktop#117 (comment)

When clicking on the X to cancel the upload, after confirming, I get another pop-up that says Cancelling remaining uploads and that never ends. If I restart the app it automatically tries to resume uploading the stuck files, clicking X again causes the same broken behavior.

Background sync not working

I have a Xiaomi Poco F1 (MIUI 12.0.3 - Android 10) and sync is only working with the app opened. If I switch to other app, after some time I reopen Ente app and the sync was interrupted.

I've already disabled MIUI's battery saving option but it is still not working....

andOTP JSON Import Support

I would like to migrate to your app from andOTP as it's not maintained anymore

This is a request to add import support for andOTP JSON or .AES files

Thanks

Lock account after biometrics reset

As has been recently reported, if a bad actor was able to watch a passcode being entered on iOS or Android before they stole the device they can currently change the biometrics and gain access to ente Authenticator even if it’s secured with biometrics.

It would be great there was an option to automatically log out ente Authenticator anytime the biometrics changed to mitigate the risk of this kind of attack. Bitwarden already does this.

Thanks devs for such a great app!

Album organizing

Is there a way to create new albums? The only way I've seen is when uploading, but that didn't work for me even though I selected to create a new album.

website icon

it would be great to website icon and also if we can add this manually

Thanks for the great work

Bulk Download

There should be a download button in place of the orange circle
300946.jpg

[Web] Change layout

I got like 20 2-Factors+ and the webpage is so similar with the App, that its kinda annoying to scroll all the way down.
Also every time i add a new 2 Factor, it just makes the Webpage longer. You could make multiple Tiles next to eachother, so you can have everything on 1 Page without scrolling infinitively when you want to get an auth code.
image
So if you would move the first auths to the left, make another row with the next one and the search bar in the top right corner, it would be pretty good i think

WearOS support

Google Photos support WearOS, so I think it would be great if ente does the same thing.

Logos for entries

Most auth apps have logos, and it would be good to see same thing on ente.

Proposal for Funding Mechanism to Support ente Auth Development

Considering the effort needed to maintain and enhance ente Auth, I propose establishing funding mechanisms to support its development.

Options include:

Platforms like Open Collective, GitHub Sponsors, or something like that for donations and sponsorships.

Implementing these can foster long-term sustainability and success of ente Auth.

Inclusion of Mastodon and Matrix (Element) in Social Networks List

Dear ente Auth Development Team,

I hope you're doing well. I am writing to suggest an enhancement to the ente Auth application that would be beneficial to the user community.

In the current version of the application, the Social Networks list, located within the 'Community' section, does not include Mastodon and Matrix (Element) as available options. However, these platforms are mentioned in the README documentation on the GitHub repository.

Mastodon and Matrix (Element) are platforms gaining significant traction within the open-source community. Their inclusion in the application's Social Networks list would expand the range of connectivity options for users and further underscore your commitment to open-source and decentralized networks.

Please consider this proposed enhancement. Such an addition would augment the overall user experience and further contribute to the growth and development of the ente Auth community.

Thank you for your time and for the remarkable work you have accomplished with the ente Auth application thus far.

image

Android : Upload certain folder even when .nomedia is there

Hello I have been using ente for some time with a Samsung phone and I use folders to separate work and personal photos and I want ente to sync a folder containing personal photos but it doesn't because of the .nomedia folder which I have placed to avoid them from showing up on the Samsung gallery app

Is it possible for ente to upload images from a folder that contains the .nomedia file as well

[Web] Automatic lock screen

If the tab remains open for over a specific duration (say 5 minutes), the app could bring up the lockscreen.

Act as Android's gallery app

The app currently does not act as Android's gallery app. Tapping on pictures in the File Manager (documentsUI) will not work if no other gallery app is installed.

I would be nice if you can have it acting as a gallery app as well.

Search

I use 2FA on over 50 different services, so I would love it if I could search for specific services through the app based on issuer and/or account.

F-Droid release

Since Ente itself is on F-Droid, this app should be to :)

Possible security issue on ente auth web

Thanks for all your hard work in developing ente auth! Really appreciate the same! I wanted to report the below issue, as I had just stumbled upon it the other day.

If you close the ente auth webapp tab (without logging out, or deleting the session), and once you re-open it after some time (not sure about exact threshold that's configured in backend - can ente team folks confirm about this please?), it prompts you to enter password before actually seeing the 2FA entries. As might be intuitive - this is a really nice security feature, so that no one can randomly access your ente auth webapp 2fa entries once you are logged in on your machine.

Now the weird thing is that if you never close the ente auth webapp tab, it won't auto-timeout to show the password popup in the same tab, and keeps on showing the 2fa entries always. Atleast this was the case in my usage of the webapp while it was open for long (i had accidentally forgotten to close the tab) and when i came post few hours i think it was still showing me the 2fa entries. Ideally this should not be the case as it opens up unnecessary room for unauthorised access if at all you accidentally leave your tab open. It should ideally auto time out and force-popup the lock screen even if the tab is kept forever and not closed. As you can imagine this might be especially important in the context of a 2fa app, as it has secrets data. Can this be please added?

To be clear: I don't know if in case this feature is already there in place, and if I couldn't see the lockscreen in the same tab due to the threshold of that lockscreen popping up is higher than what I saw after. If this feature is already in place, can the ente team please mention what that timeout is configured to be and if it can be potentially reduced? Like I mentioned, I have by no means done any stress testing for this - i just bumped into this issue as I had accidentally left my tab open.

cc: @vishnukvmd @ua741

iOS: When exiting the app, the privacy screen does not come up.

When exiting the iOS app with Face ID enabled, the expected behaviour is that the app should have a privacy screen enabled such that, upon reentry into the app (without completely closing it), the photo gallery is blocked by the privacy screen until Face ID authentication is completed.

What I've observed is that while Face ID does indeed activate upon switching apps, there's no privacy screen activated at the same time, such as with Standard Notes, thereby showing any person who happens to have my phone, unauthenticated, whatever I was last viewing in my gallery, which therefore mitigates the purpose of the Face ID authentication in the first place.

I have the latest App Store release installed on an iPhone 13 Pro.

Thanks!

Add flatpak package

AppImages are nice, but flatpaks are much better on Linux in my opinion. They are supported by repositories and sandboxed.

Here is a comparision

[Web] Make an Add button to enter details manually

In the past weeks i've changed all my 2factors to ente auth. I had a few times the problem that ente couldn't recognize the QR Code, so they might be too complicated for ente.
But then i had to get the Code for 2Factor from my PC to my phone, without typing it off and just copying it.
So i had the idea if you could add an + Button like in the App for the Website, where you can enter the details manually.
Would be really nice!

Add support for groups

Hi,

I'd like to suggest adding groups to easily display only personal or work items for example. You can have a look at how Aegis does it for inspiration.

And thanks for this great tool!

Cheers

iOS - Hide the contents in recent apps when lockscreen is set

Feature request via email

After I set Lockscreen, and I swipe up the auth app (iPhone), the contents of the app can be seen like many other apps except password manager (set lockscreen). Like password manager, can the contents be hidden when Lockscreen is set?

Add languages for translation

Hello,
Thanks for making such a wonderful program.

I would like to request you to add Finnish, Russian and Turkish languages to your Crowdin project. There are some of us who want to help translating.

Secret code with spaces

Many sites give a phrase with spaces as the secret key for 2FA. Currently Ente Auth does not accept them and you have to delete them manually.

I think it would be much better if it accepted them.

Yubikey Support

It would be great to add support for FIDO/passkeys so accounts can be secured with physical security keys like Yubikey.

I love the idea of an open source cross platform 2FA service but am hesitant to use it if it’s (somewhat ironically) only able to be secured by a password.

Implement in-app camera

Add camera functionality to allow ente users to take pictures through the app, bypassing the device photo gallery.

The captured photos should only be accessible through the ente mobile app, any copies of the images stored locally on the device must be encrypted

The flutter camera plugin can be used to implement the in-app camera. Detailed examples of the plugin can be found here, in this blog post, and the associated github repo

Different 2FA codes

I noticed that if I log in with the ente auth account on another device, the 2FA codes I have in the account are different for each device.
Let me explain: On my mobile phone, the app generates some 2FA codes while on the Chromebook it generates others 2FA codes with different numbers. Sites accept the 2FA codes I have on my mobile phone and the ones on the Chromebook are rejected as incorrect.

I don't know what I am doing wrong!

8-digit/7-digit codes break upon editing

Summary: If you edit an entry that produces 8-digit codes, it will produce 6-digit codes after the edit. The same applies for 7-digit codes.

Steps-to-reproduce:
(1): Import otpauth://totp/Tesk:test%40test.com?issuer=Tesk&secret=PAU6LFQ7F7U2FCTOTVLHU37WAJSGYOKL&digits=8&period=30 It should produce 8-digit codes.
(2) Realize there is a typo, and it should be Test instead of Tesk. Proceed to edit the entry name to Test
(3) Upon editing, ente produces only 6-digit codes.

Blizzard, for reference, produces 8-digit codes. Gemini produces 7-digit codes.

No files dialog for import

Going to Settings > Data > Import codes > Select file doesn't pop up a file selector at all, so I can't import my codes.

  • Android 13
  • Latest release APK

Support in-app purchase via Crypto

A lot of people need this

They are as unaware of this feature as I am. If it were possible in the app, more people would pay that way.

mysterium vpn did it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.