Tag: crypto wallet

  • Day 15 — What Actually Makes an App a dApp?

    Watercolor illustration of a user interface connecting a wallet to decentralized smart contracts

    A decentralised application, or dApp, can look just like any other website. It may have buttons, forms, charts, and a familiar login screen. The difference is not mainly visual; it lies in where the important rules and records live.

    A typical dApp has three layers. The frontend is the website or mobile interface. A wallet connects the user’s account and signs instructions. Smart contracts on a blockchain hold the shared state and enforce the core rules. The interface might say Swap, but the contract determines what assets move and under which conditions.

    Reading from a dApp can be almost invisible. The website asks a node for contract data and displays balances or prices. Writing is different: changing blockchain state requires a transaction. Your wallet shows what is being requested, you sign it, the network executes it, and gas is paid even if the transaction later fails.

    Decentralisation is not an all-or-nothing label. A contract may be immutable while its website is hosted by one company. Its data may depend on a centralised server, or an administrator may retain an upgrade key. A useful evaluation asks which parts can be censored, changed, or switched off—and by whom.

    Wallet-based access removes the need to create a new username and password for every service, but it changes the security model. A signature can authorise a harmless login, a token approval, or a valuable transfer. Users must understand the request because there may be no support desk capable of reversing a mistaken signature.

    Good dApps make these boundaries clear: they show contract addresses, transaction details, risks, and the source of external data. Open contracts can be inspected and reused, but open code does not mean bug-free code. Audits help; they never turn software into a guarantee.

    One puzzle remains. A smart contract can read blockchain data, but how can a lending app learn the rupee price of ether or whether it rained in Delhi? Tomorrow we meet the bridge called an oracle.

  • Day 11 — How Can a Wallet Prove It Is You Without a Password?

    A private wallet key creating a verifiable digital signature

    A crypto wallet looks a little like a banking application, but the similarity can be misleading. The wallet does not contain coins, and a blockchain does not keep a private password database for its users. What the wallet protects is a cryptographic secret that allows its owner to authorise changes on the public ledger.

    This secret is called a private key. From it, software can derive a public key and an address that other people may safely know. When you send ether or interact with a smart contract, the wallet uses the private key to create a digital signature. The private key itself does not leave the wallet. The signature travels with the transaction.

    A digital signature acts like a seal tied both to the signer and to the exact message being signed. Ethereum nodes can use public information to verify that the signature could only have been produced by the corresponding private key. If even one detail of the transaction changes, the old signature will no longer match.

    This gives the network proof without requiring identity. Ethereum does not need to know your name, email address or face. It needs to know that the holder of a particular key approved a particular instruction. Control of the key therefore becomes control of the account, which is why ‘not your keys, not your coins’ is more than a slogan.

    Wallets often represent the key through a recovery phrase made from a list of words. That phrase can recreate the wallet’s keys, so anyone who obtains it may gain the same control as the owner. There is usually no central help desk capable of reversing the theft. A wallet interface can be replaced; a compromised recovery phrase cannot be made secret again.

    Signatures remove the need to share passwords with every application, but they create a new responsibility: understanding what is being signed. A malicious website may ask for approval that looks harmless while granting broad control over tokens. Good wallet security includes reading transaction details, limiting approvals and keeping recovery information offline.

    Now we can prove who authorised a transaction. But what exactly does an Ethereum account own? Bitcoin speaks about individual unspent outputs, while Ethereum often shows a simple balance. The two systems organise ownership in very different ways.

  • Day 1 — I Sent Money Without a Bank. Wait… How Did That Even Work?

    A few years ago, if you wanted to send money to somebody, there were very few options. You could go to a bank, use internet banking, or just send money through a mobile app like Paytm, Google Pay or UPI. Mobile apps these days look extremely sleek and fast, but they only give the illusion. In the backend, every transaction ends up going to a bank. No matter how fast it feels or how short the time it takes, there is a bank somewhere in the middle making sure things check out.

    Lets take the example where you send Rs 500 to a friend. To you it feels like money is going directly to him, but in reality it isnt. Instead, you are asking the bank to change its database. Firstly, your bank checks if you have enough money (Rs 500). It then checks the validity of the destination bank account, checks the legality of the transaction, and then decrements the amount from your bank account while crediting it to your friend. To sum it up, it is nothing more than asking the bank to update its database from having balance X in your account, to balance X-500, and in the bank of your friend having a balance Y, to balance Y+500. This is how digital money works in the real world today and it has been working this way for decades – a middleman with trusted power.

    But things became strange in 2009. A man (or group of people) known only by the pseudonym Satoshi Nakamoto created a system which looked like just another form of digital money, but one crucial difference; it enabled the sending of money from one individual to another without a third party.

    This sounds like a contradiction in terms. If there is no bank verifying the transaction, then how will we be able to detect cheating? How do we know if you actually own the money which you are sending? And how do we stop one person from using the same digital money for multiple transactions? This was where many people became bewildered and honestly still are bewildered by this day and age.

    Lets imagine an everyday situation where you have to send some Bitcoins to your friend Rahul. Instead of opening a banking app, you would open something called a ‘crypto wallet’. A crypto wallet, however, does not actually store money in the sense of a physical wallet does storing cash. What it does is store certain cryptographic keys that give you access to funds, without which they cannot be touched or moved by anybody else.

    Each crypto wallet is associated with an address, called the ‘public address’ which can be thought of like an email address, but for your digital cash. Anyone in the world can send Bitcoins to this address. This address is usually a very long string of numbers and letters, which look very peculiar the first time you see it, but represent a destination in the Bitcoin network.

    So, when you are going to send your friend Rahul Bitcoins, you punch in his public address, the amount of Bitcoins you wish to send and when you hit ‘send’, your wallet announces the transaction to thousands of computers all across the world which are interconnected in the Bitcoin network.

    The interesting part is that this is where we depart from how banks operate. Instead of having a single entity like a bank to verify transactions, in the Bitcoin network, there are many computers all over the world which collectively verify each transaction on the basis of whether the transaction is legitimate, and the person sending money actually possesses the Bitcoins, and these Bitcoins have not already been spent elsewhere. The system is therefore able to verify if the transaction is legitimate or not.

    Where is it verified? It is verified in what is called a blockchain.

    A blockchain can be seen like a massive notebook that records all Bitcoin transactions in existence. For example, there could be entries in the notebook which are like “Alankrit sent 1 Bitcoin to Rahul”, “Rahul sent 0.5 Bitcoin to Sneha”, “Sneha sent 0.2 Bitcoin to Aman”, etc. And over time, as and when transactions occur, the notebook grows larger and larger.

    The key attribute of a blockchain is that, instead of one single notebook residing somewhere, there are thousands of copies all around the world, and whenever a transaction is made, all these thousand notebooks get updated. This makes altering the blockchain almost impossible as you would have to simultaneously alter a thousands of ledgers at the same time, and all these copies would have to be agreed upon. For example, imagine you are in a classroom and you and every single student in the class are keeping track of all transactions made by all students in a notebook. If, later on, a student decides to cheat by altering an entry in his notebook, all the other thousands of students in the class would easily detect this as his ledger will not match the notebooks of any other student. The system is thus reliable as many individuals maintain its integrity.

    And this is what distinguishes Bitcoin and all its descendant cryptos. For the very first time, individuals can make digital transactions without anyone’s approval and without a bank in between them. The whole system is powered by open source software and maintained by the users.

    However, it is now natural for a new question to arise: If banks are not verifying the transaction then who is and why should they do it for free?

    The answer is through what is called Bitcoin mining.