Bitcoin Forum
May 25, 2024, 10:24:10 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Project Development / Re: [Android] Seedcake App Open-Source Bitcoin Seed Storage on: December 01, 2023, 01:58:49 AM
At the end of the encryption process in Seedcake, the user has the freedom to choose where to store their encrypted seed, whether on a device, in the cloud, or in a password manager like Bitwarden, which would offer an additional layer of encryption and cloud synchronization.
Here you need to compare your method of 256-bit key AES/GCM encryption with the wallet file that is encrypted in the Electrum wallet (or any open source wallet) that uses AES-256-CBC, so we can say that the wallet file that is encrypted with Electrum is safe if it is generated with a strong password, and it is more secure than Seedcake, assuming that the Electrum wallet has sufficient reviews.

I can understand the need for Seedcake to have a second layer of security or double encryption, so that if Seedcake's encryption is broken, the wallet file is still encrypted, but it will add more complications as you need to remember two passwords, in addition to the presence of other options that are open source and easy to use.


Hello @Yamane_Keto, I hope you are well.  Roll Eyes

I appreciate the opportunity to discuss this topic, which is enriching for the entire community, but I disagree with the notion that AES/GCM is inferior to AES-256-CBC. AES/GCM offers significant advantages, particularly in its ability to perform encryption and authentication simultaneously. This not only improves security against attacks such as padding oracle but also increases efficiency due to its parallel processing capability. Furthermore, the integration of authentication in AES/GCM eliminates the need for additional hashing functions, simplifying the implementation while maintaining robust security.

In future updates, I will include a feature for the selection of encryption methods that will include AES-256-CBC and others.

I recognize that using an app to camouflage the seed like Seedcake introduces an additional layer of complexity.
However, this approach still makes sense to me, and I emphasize that I am not suggesting it as the only viable solution for everyone.
The choice to use or not use Seedcake should align with individual needs and personal security strategy.

References for further reading:
1. Comparison of Symmetric Encryption Methods
https://soatok.blog/2020/07/12/comparison-of-symmetric-encryption-methods/
2. Selecting the Best AES Block Cipher Mode (AES-GCM VS AES-CBC)
https://isuruka.medium.com/selecting-the-best-aes-block-cipher-mode-aes-gcm-vs-aes-cbc-ee3ebae173c
3. Change Encryption Cipher in Access Server
https://openvpn.net/vpn-server-resources/change-encryption-cipher-in-access-server/
4. What's the Difference Between AES-CBC and AES-GCM?
https://helpdesk.privateinternetaccess.com/kb/articles/what-s-the-difference-between-aes-cbc-and-aes-gcm
5. Detailed Explanation on AES-CBC and AES-GCM
https://helpdesk.privateinternetaccess.com/kb/articles/pdf/what-s-the-difference-between-aes-cbc-and-aes-gcm
2  Bitcoin / Project Development / Re: [Android] Seedcake App Open-Source Bitcoin Seed Storage on: November 29, 2023, 01:12:24 PM
It adds more risks without any advantage, as I can encrypt the seeds using a password and keep the wallet file on my phone. This file is hidden and can only be accessed via root privileges. The Electrum wallet is open source and has been tested many times, electrum wallet file can be encrypted using a password. It is powerful enough to store seeds offline in case something happens to the phone.
It is true that your application is open source, but there are not enough reviews. There are better alternatives and many wallets support the wallet encryption feature using a strong password.


However, the sturdiness of physical storage can also be its biggest drawback.

Imagine having to flee from an authoritarian country. Would you really trust a piece of crypto steel that could be confiscated at the border?

Use the BIP39 Passphrases feature, where you add a word to the seed, and you can keep this word in a separate place or even on your phone in an encrypted form.

Now think about an armed conflict that would leave your home in ruins, and your seed phrases would now be under tons of rubble.
Use a multi-signature wallet in different places.

Or even in an unfortunate natural disaster scenario where your crypto steel would simply become inaccessible
Then you will not be able to reach your phone or any digital device, as steel and metals withstand harsher conditions than most electronic devices.




I have not found a convincing reason to use the service, and I have not read the code yet.


Hello Yamane_Keto, - TL;DR

Thank you for raising valid concerns about the security of Seedcake. Let's focus on the brute force attack issue in relation to root access.

1. Brute Force Attacks:

The encryption model used would make brute force attacks extremely inconvenient and impractical. Even if an attacker obtains root access and can access the encrypted data file.
   - Key Complexity: The 256-bit encryption key is generated with a high number of iterations (200,000 in the case of `StrongGCM`), meaning any attempt to decrypt the key using brute force would require an immense amount of time and computational resources, making it an inefficient and impractical effort.
   - AES/GCM: The use of AES in GCM mode (Galois/Counter Mode) ensures not just strong encryption but also authentication, increasing security against tampering.

A pitfall here would be storing the passphrase used to encrypt the seed in the same place or file used to store the encrypted data, that indeed could be a disaster since you would be handing both the knife and the cheese to an attacker.
Self-custody is a fundamental step for digital assets, as said the intention of the project is not to convince anyone to use it, but to have it as another ally in your custody strategy.



2. Strategies and Analogies:

But it seems there's a slight misunderstanding about the intention of the app, which I'd like to clarify.
Think of Seedcake as a multifunctional toolbox, not just as a closet for storing items. Your point of view, focused on local storage, is akin to considering a Swiss Army knife only for its blade, while ignoring the other useful tools it offers.

In the case of Seedcake, local storage on the device is just one of the options. Indeed, if the proposal were simply local storage, it would be more prudent to use a physical method, like a metal plate or a piece of paper. However, the real proposal of Seedcake is to offer a flexible and secure alternative that goes beyond the limits of physical storage, as an additional layer for your self-custody strategy.

At the end of the encryption process in Seedcake, the user has the freedom to choose where to store their encrypted seed, whether on a device, in the cloud, or in a password manager like Bitwarden, which would offer an additional layer of encryption and cloud synchronization. This provides additional security and adaptability, especially in emergency or unforeseen situations, like the ones you mentioned.

The true value of Seedcake lies in its ability to adapt to the self-custody needs of each user, don't get stuck on a static storage solution.

You are absolutely right when you talk about using a multi-signature strategy or even using a passphrase in your seed generated in the wallet itself, and that is encouraged.
But think of it as a game of camouflage: you have your seeds protected by a passphrase and, with Seedcake, you take an additional step, transforming those words into an encrypted hash. This is like disguising a valuable diamond as a common stone, making it less attractive to the eyes of a casual observer, or even some authority in adverse scenarios.
Imagine a hypothetical scenario where your seeds are discovered, but still protected by a passphrase. Having your 12 or 24 words exposed, shouting "I am a BTC seed", is not desirable, especially under authoritarian regimes.

Now, let's move forward in this analogy, not so far from the reality of some, where you are under an authoritarian regime. In this environment, where privacy is a rare luxury, your Bitcoin seeds, protected by a passphrase, would be like valuable jewels stored in a transparent box. Visible, tempting, but still locked.
Following the analogy, you would now be in an extreme situation, where you are confronted with the threat of a drill machine to your knee, a brutal and invasive pressure that such regimes can exert. Would you endure such torture and not give away your passphrase?

With the advent of cryptography, we are in an era where it's possible to take inconfiscable secrets to the grave, a feat unprecedented in history. This capability brings with it a crucial interrogation: Would you resist torture to protect such secrets? I'd prefer to disguise my jewel as a worthless stone and use various strategies (The Seedcake app is for use where local storage becomes unviable), maybe this is not your reality.
By transforming your seeds into an encrypted hash, Seedcake acts as a cloak of invisibility, hiding your precious seeds from everyone's sight, turning them from sparkling jewels into common stones in the eyes of inquisitors.
The app's proposal is to prevent its seeds from being obvious words that scream their nature and purpose, that is, transforming what is valuable and visible into something resilient and hidden.



3. Open-source But Without Reviews and with Low Level of Trust:

I understand your observation about the lack of reviews in the project, and I agree that this is crucial. This is a very recent project, initially developed for personal use. I recently decided to open it up to the community, seeking contributions and external audits. I am fully aware of the importance of reviews and detailed feedback to ensure the reliability and security of the application. Being an open initiative, I invite enthusiasts and developers to collaborate and conduct their own audits, enriching the project and strengthening its foundation of security and reliability for those who find its use appropriate.
3  Local / Desenvolvimento & Discussões Técnicas / Re: [Android] Seedcake App Open-Source Bitcoin Seed Storage on: November 29, 2023, 11:14:13 AM
@F4bioo, estava testando o aplicativo aqui, bem simples de usar e pode ser uma alternativa para aquelas pessoas que salvam suas seeds em um bloco de notas.. infelizmente é algo comum.

Uma dúvida básica.. se a pessoa perder o celular, perdeu a seed né? desinstalei e instalei o app novamente para ver se salvava na nuvem ou algo do tipo, e não tinha nada.

Uma sugestão de segurança: mudar a forma de entrada das palavras.. o teclado do Google (Gboard) salva todas palavras em sua base de dados conforme você as escreve e, para piorar, salva exatamente na ordem em que você as escreve.. não sei como o Google trata esses dados (ou seja, se há vazamentos), mas qualquer pessoa que pegar seu celular pode acabar descobrindo sua seed.. esse problema é ainda maior para nós que usamos outro idioma já que essas palavras estarão em inglês, chamando ainda mais atenção.

Exemplo, após usar o Seedcake entrei no Telegram e digitei a primeira palavra da minha seed (pet), todas as outras aparecem como sugestão do Gboard:



Btw, não sei como carteiras mobile tratam essa brecha de segurança.



Olá @sabotag3x! Obrigado pelo feedback e pela pergunta.

O Seedcake não tem permissão de internet e não possui uma feature de sync, portanto, não salva dados em servidores externos. Nesse momento, para as versões atuais, ter o app offline é uma medida de segurança. Existem três formas de custodiar a informação encriptada da seed:

  • Guardar o QR Code: Você pode armazenar o QR Code gerado pelo Seedcake em um serviço de nuvem de sua confiança.
  • Copiar a Hash Criptografada: Outra alternativa é copiar a hash criptografada e guardar em algum lugar seguro de sua preferência.
  • Salvar Localmente: O app permite que na etapa final do fluxo, salvar a seed encriptada localmente em um arquivo de banco de dados. No entanto, em caso de perda, furto ou danos ao dispositivo, você não teria mais acesso a suas informações e isso invalidaria o processo de custódia.
---

Minha sugestão é optar pela hash ou QR Code armazenados em nuvem dado que são dados encriptados ou em aplicativos de gerenciamento de senhas, como o Bitwarden, que oferecem uma camada adicional de criptografia e sincronização em nuvem.

Quanto à questão da segurança relacionada ao uso do teclado, você levantou um ponto muito importante. O armazenamento de palavras digitadas pelo Gboard realmente pode ser uma vulnerabilidade dado esse histórico que você descreveu. Vou trabalhar para implementar uma solução mais segura para a entrada das palavras, evitando que dados sensíveis sejam armazenados ou sugeridos pelo teclado. Agradeço muito a sugestão e fique atento às atualizações futuras do Seedcake!
4  Local / Desenvolvimento & Discussões Técnicas / [Android] Seedcake App Open-Source Bitcoin Seed Storage on: November 28, 2023, 09:33:13 PM
Apresentando Seedcake: App Open-Source para Armazenamento de Seed de Bitcoin

Olá a todos, sou novo aqui e acredito que o Bitcoin é uma ferramenta de liberdade. Estou empolgado para apresentar o aplicativo Seedcake (Android), um projeto open-source que criei.

Contexto e Motivação:
O Seedcake oferece uma maneira segura de armazenar seeds de Bitcoin baseadas em Bip-39. Pode parecer loucura armazenar frases-seed em smartphones. No entanto, considerando os riscos dos métodos físicos em cenários de emergência, e reconhecendo que nem todos usam uma passphrase (embora devessem), pensei: se confiamos na criptografia com nossos ativos digitais, por que não usá-la para proteger nossas seeds como uma camada adicional de segurança além da passphrase?

Características e Funcionalidades:
  • Método de Criptografia: Proteção de dados AES/GCM.
  • Força da Chave: Utiliza uma chave de 256 bits, processada através de 200.000 iterações.
  • Compatibilidade da Frase-Seed: Suporta padrão de 12 a 24 palavras em inglês Bip-39.
  • Funcionalidade Seed Colorida: Um método único e menos seguro para armazenamento de frases-seed.

Responsabilidade do Usuário:
Este aplicativo é uma contribuição para a comunidade e não tenho intenção de justificar o uso disso ou daquilo. Este é apenas algo que pensei que pudesse ser útil em cenários que o armazenamento convencional não fosse viável. Os usuários são responsáveis pela segurança de seus dados. O Seedcake não armazena nenhuma informação sensível tal como a passphrase usada para encriptar a seed, garantindo que os usuários mantenham o controle.

Convite para Contribuições:
Se alguém tiver ideias para funcionalidades, auditorias ou contribuições de código, serão muito bem-vindas. Como um projeto open-source, o Seedcake incentiva o envolvimento da comunidade para aprimoramentos e feedback.

Link para o GitHub:
Para mais detalhes, visite a página do Seedcake no GitHub: https://github.com/F4bioo/Seedcake

Considerações Finais:
Obrigado pelo seu tempo! Aguardo a contribuição e o apoio da comunidade para tornar o Seedcake uma ferramenta valiosa para aqueles que buscam uma solução digital para armazenamento de frases-seed.
5  Bitcoin / Project Development / [Android] Seedcake App Open-Source Bitcoin Seed Storage on: November 28, 2023, 09:09:03 PM
Introducing Seedcake: Open-Source App for Bitcoin Seed Storage


Greeting and Introduction:
Hello everyone, I'm new here and share the belief that Bitcoin is a tool for freedom. I'm thrilled to introduce the Seedcake app (Android), an open-source project I created.

Context and Motivation:
Seedcake offers a secure way to store Bitcoin seeds based on Bip-39. It might sound crazy to store seed phrases on smartphones. However, considering the risks of physical methods in emergency scenarios, and recognizing that not everyone uses a passphrase (though they should), I thought: if we trust encryption with our digital assets, why not use it to protect our seeds as an additional layer of security beyond the passphrase?

Features and Functionality:
  • Encryption Method: AES/GCM data protection.
  • Key Strength: Utilizes a 256-bit key, processed through 200,000 iterations.
  • Seed Phrase Compatibility: Supports standard from 12 to 24 Bip-39 English words.
  • Colored Seed Feature: A unique, less secure method for seed phrase storage.

User Responsibility:
This app is a contribution to the community, without advocating for one method over another. Users are responsible for their data's security. Seedcake does not store any sensitive information, ensuring users maintain control.

Invitation for Contributions:
If anyone has ideas for functionality, audits, or code contributions, they are very welcome. As an open-source project, Seedcake encourages community involvement for enhancements and feedback.

GitHub Link:
For more details, visit the Seedcake GitHub page: https://github.com/F4bioo/Seedcake

Closing Thoughts:
Thank you for your time! I look forward to the community's input and support in making Seedcake a valuable tool for those seeking a digital solution for seed phrase storage.
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!