Welcome to the ChangeNOW Blog. Here we focus on research, real use cases, and practical insights β not hype. While we double-check our facts, nothing here should be taken as financial advice; crypto is a high-risk space, and your own research always matters.
The security of blockchain technology is real, but weak points sit in the products built on the chain. That's where most blockchain cybersecurity incidents happen. Next, we'll talk about the real threats that exist if you create such a product, and how to avoid them.
Key Takeaways
-
The chain isn't the weak point. Nearly every real incident happens in the product built on top of it.
-
Your risk is whatever you hold. Keys, client funds, personal data: if it's worth stealing and it sits on your side, that's what gets attacked.
-
There's no undo button. A confirmed transaction can't be reversed, so a bug, a wrong address or a leaked key is permanent, which is why an unaudited contract has no business on mainnet.
-
Compliance is a gate. SOC 2, GDPR and AML rules decide who gets to sell to institutions β and the right to erasure runs straight into an immutable ledger.
Key Features of Blockchain Security that Already Exist
A blockchain is safe by design, you inherit it the moment you're on-chain. Properties below give you most of the security a blockchain provides. You should know them before building anything above them.
Decentralization
Data sits across many nodes, so one machine failing or getting hacked doesn't bring the system down or hand over the keys.
Cryptographic hashing
Cryptography makes tampering obvious and proves who signed what. Change an old record and the chain stops matching. Forge a signature and it won't verify.
Consensus mechanisms
Nodes that don't trust each other still agree on one version of history β Proof of Work backs that with compute, Proof of Stake with money at risk. The chain provides it.
Transparency vs privacy
Transparency in a public chain functions in two ways. The open ledger enables anyone to examine each transaction, and cryptography ensures that the individuals behind the addresses remain pseudonymous. Thus both auditability and privacy are achieved, but the same openness which makes fraud visible allows an adversary to study the patterns.
Immutability
A confirmed transaction can't be reversed. Strong against attackers, but unforgiving with mistakes: a bug, a wrong address or a stolen key is permanent.
So the base is layered and handled by design β that's how security in blockchain technology works as intended. Your risk lives in the contract you deploy, the keys you hold and the user data you store. Guarding that data is blockchain data security, and it's where the real blockchain vulnerabilities show up: what the rest of this article covers, including what you can hand to a provider instead of building yourself.
Best Practices for Blockchain Security for Businesses
What breaks in practice: a misconfigured node, an unaudited contract, a leaked key, a signature obtained by deception. Blockchain security solutions at the deployment level are the operator's problem, and they break down into four areas.
1. Smart contract security
Problem: once a contract is live, you usually can't change its code β the bug you shipped is what attackers get to work with.
Solution: do the work before release.
- Audit the code for blockchain security vulnerabilities
- Add formal verification where the stakes justify it
- Test past the happy path β exploits live in the routes you didn't plan for
- Build on well-tested libraries instead of hand-writing core components
- Lock privileged functions behind access controls
The 2016 DAO attack drained about $60 million through a flaw a careful review would have caught. Still the clearest case for treating pre-deployment review as non-negotiable.
One rule: no audit, no mainnet.
2. Infrastructure security
Problem: the contract is one attack surface. The machines and endpoints running it are another.
Solution: harden the network around it.
- Segment it so one breach can't spread
- Encrypt traffic between components
- Spread nodes across regions, so no single location becomes a single point of failure
- Put firewalls and intrusion detection on the perimeter
- Guard API endpoints hardest β auth and rate limiting on every public one
For denial-of-service, the same distribution does the work: rate-limit at the edge, manage bandwidth, spread nodes out, and cap the memory queue so a flood of pending transactions can't starve a node.
3. Operational security
Problem: your infrastructure runs on keys, and whoever holds a key holds the funds.
Solution: treat key handling as its own discipline.
- Keep private keys in multi-sig wallets, HSMs, or cold storage β never a hot environment
- Grant access by least privilege with role-based controls
- Require approvals so no single person can move large value alone
- Rotate keys on a schedule and back them up securely
And keep a written incident-response plan β it decides how far a breach spreads:
- Playbooks for each type of attack
- A communication channel that survives a compromise
- Snapshots to roll back to, and recovery steps you've actually tested
- Drills that rehearse an incident before a real one hits
Even providers who never touch user funds treat this plan as mandatory.
4. User-level protection
Problem: the user is the hardest surface to secure. Phishing and social engineering don't break the protocol β they work on the person, so the fixes are procedural, not technical.
Solution: shrink the room for error.
- Teach users what a legitimate signing request looks like
- Fold anti-phishing basics and the core blockchain safety rules into onboarding
- Design the signing UI so the safe action is the obvious one β transaction and destination details clear enough that a forged request stands out
The next section treats phishing and key theft as attacks. The work here is their mirror image β closing the gap between what a user should do and what the interface makes easy.
Blockchain Security Risks
Blockchain attacks hit different layers: consensus rules, signing keys, contract code, DeFi economics. And each needs its own defense.
The table below shows every one of these blockchain security risks to its control, with the detail underneath.
But note the shortcut: three of the five β reentrancy, key theft, oracle manipulation β only exist if you run the contract logic and hold the keys yourself. Route swaps through a non-custodial API like ChangeNOW and that surface moves off your side β keys stay with the user, funds never touch your balance.
Learn More About ChangeNOW API
| Risk | What happens | How to prevent |
|---|---|---|
| Reentrancy | A contract pays out before it updates its balance, so an attacker calls it again and again and drains it | Update state before sending funds (Checks-Effects-Interactions); a nonReentrant guard on shared state |
| Key theft | Malware, a bad backup, or a leaked secret hands an attacker full control of the funds | Multi-sig, HSMs, cold storage, key rotation |
| Phishing | A fake site tricks the user into signing; the network sees a valid transaction and confirms it | Malicious-link detection, user training, blocked cross-domain access |
| 51% attack | Whoever controls most of the compute or stake can reverse transactions and double-spend | Checkpoints, longer confirmations, slashing, more honest validators |
| Oracle attack | A flash loan distorts the price in a thin pool, and the protocol acts on the fake number | Decentralized oracles with cross-source aggregation; TWAP or a dual-oracle setup with fallback |
Smart contract exploits: reentrancy
What happens? In a smart contract the bug lives in the code, and you usually can't patch a live contract β so whatever you shipped is what attackers get. Reentrancy is the classic way in. Say a withdrawal function sends the money out before it records that the money is gone. That outgoing call lands in the attacker's contract, which instantly calls withdraw again and the books still show the old, higher balance. It repeats, paying out over and over against a balance nobody lowered, until the contract is empty. That's how the 2016 DAO hack lost around $60 million.
How to avoid it? Update the balance before you move funds β that's the Checks-Effects-Interactions pattern. Add a nonReentrant guard as backup, and make it cover the contract's shared state, not a single function β cross-function and read-only variants walk straight past a guard on one entry point.
Key theft: the human is the target
What happens? The keys are their own layer, and here the weak link isn't the chain β it's the person holding the key. If a private key leaks through malware, a careless backup, or an exposed secret, the attacker gets exactly the control the owner had, and recovery is rare β usually only through forensics or legal action.
How to avoid it? Split signing across several keys, move them to hardware modules or cold storage, and rotate on a schedule. None of this makes theft impossible, but it turns a compromise from total loss into something you can recover from.
Learn more: $210,000 in Stolen Crypto Seized with Romanian Law Enforcement and ChangeNOW
Phishing: an attack that never touches the chain
What happens? Phishing skips the blockchain completely. The user lands on a fake interface, clicks a poisoned link, and hands over wallet access. The signature is real, so the network sees a legitimate transaction and confirms it: no stolen key, nothing to trace.
How to avoid it? The fixes are all off-chain: flag malicious links, train users to stop at a signing prompt that looks off, and block cross-domain access. The ledger won't catch this one for you.
Learn more: How ChangeNOW Helped Recover $220K From a Phishing Attack
Consensus-layer attacks: the 51% problem
What happens? Get control of most of the network's computing power (or most of the staked value on a proof-of-stake chain) and you decide which transactions count, and can reverse ones already recorded. That opens the door to double spending. There's no cryptographic fix: the attacker isn't breaking the rules, just outvoting everyone.
How to avoid it? Checkpoints, longer finality, slashing, and a bigger pool of honest validators together make grabbing a majority cost more than any attack could pay back.
Oracle manipulation: attacking the price feed
What happens? A protocol reads a token's price from an oracle. If that oracle is one DEX pool with thin liquidity, an attacker takes a flash loan, dumps a pile of tokens in to move the price, forces the protocol to act on the fake number, and repays the loan before the block closes. The contract just did what the oracle told it β which is why a single-source feed is a single point of failure. The 2020 bZx attacks are the standard example.
How to avoid it? Don't rely on one source. Pull prices from decentralized oracle networks (Chainlink, Pyth, Band) and use a time-weighted average or a dual-oracle setup with a fallback, so a brief distortion can't swing the protocol.
Regulatory Considerations
Blockchain projects answer to four sets of rules at once, set by authorities that don't coordinate:
- AML & securities: FATF, SEC and ESMA set KYC and market rules
- Data protection: GDPR governs any personal data that touches the chain
- Technical standards: ISO and NIST define what "secure by design" means
- SOC 2: the market gate to institutional deals
Once institutional money is involved, blockchain security becomes a compliance question β buyers ask who audits your controls. The two that trip teams up most: GDPR's right to erasure, which collides with an immutable ledger, and holding a current SOC 2 Type II report.
| Domain | Body | What it covers |
|---|---|---|
| AML supervision | FATF (global AML body) | KYC identification, transaction monitoring, reporting |
| Securities | SEC, ESMA (US & EU market regulators) | Custody, system reliability, data privacy, investor protection |
| Data protection | GDPR / EDPB (EU data-protection regulators) | Erasure right; personal data off-chain; fines up to 4% of turnover or β¬20M |
| Technical standards | ISO/TR 23244, ISO/TC 307, NIST IR 8202, EEA, Hyperledger | Privacy, PII protection, key management, access control, interoperability |
| Procurement gate | SOC 2 (AICPA β US accounting standards) | Independent audit of your controls; institutional buyers require it |
Right now the FATF sets the baseline for virtual asset providers, and the SEC and ESMA set the rules for blockchain-based financial products. But this moves fast β check the SEC's current position before you build against it.
Data protection: GDPR vs. immutability
GDPR Article 17 gives people the right to have their data erased. A blockchain does the opposite β pull a record and you break the ledger. You can't satisfy both on-chain, and the EDPB has closed the obvious escape hatch: "technically impossible" doesn't get you off the hook.
One catch: that pointer isn't automatically safe. A hash can still count as personal data if it can be traced back to a person, so encryption and collecting as little personal data as possible aren't optional. The cleaner move is to hold no personal data at all. Go non-custodial, store nothing, and there's nothing on-chain to reconcile with the right to erasure in the first place.
SOC 2: the procurement gate
SOC 2 is a market gate. A CPA firm checks your controls against the AICPA Trust Services Criteria. It's an attestation: an auditor vouches that your controls actually worked over a period, not a one-time exam.
- Type I says the controls were designed right on a given date.
- Type II says they held up over three to twelve months.
- Type II is the one institutional buyers want.
Without a current report you're out of institutional deal flow no matter how good the product is, because you face the same vendor due diligence as any cloud or payment processor.
So treat SOC 2 as a vendor selection criterion. Integrate with a provider that already meets KYC/AML, holds a current Type II, and deliberately keeps personal data off-chain, and that burden lifts from everyone building on it.
Blockchain Security Testing
Blockchain security testing runs in two phases. Before launch you hunt for bugs: audits, automated analysis, testnets, bug bounties, and penetration tests. And after launch you monitor the live system for attacks that only surface in production. It splits this way for a reason: you can't patch a live contract, and the threats don't stop the day you ship.
Pre-deployment testing: find the bugs first
Start with an audit from a specialist firm β a human reads the code line by line and catches logic flaws that automated tools miss. But humans shouldn't read blind. Automated analysis narrows the surface first, and it comes in two forms, each with its own blockchain security software:
| Method | Tool | What it does |
|---|---|---|
| Static analysis | Slither | Scans the source without running it; dozens of built-in checks, runs in CI on every commit |
| Dynamic / symbolic | Diligence Fuzzing | Runs the code against generated inputs to see what breaks; hosted, with IDE plugins and inline flagging |
| Build + test | Hardhat, Foundry | Compile, test, and fork mainnet state; Foundry (Rust) adds fuzzing and invariant testing |
Then push the testing outward:
- Testnet or local simulation: attack your own code before anyone else can.
- Bug bounties: pay outside researchers to find exploits while a fix is still cheap.
- Penetration testing: instead of reading the code, someone attacks the live deployment the way a real attacker would.
Post-deployment monitoring: keep watching
An audit proves the code was sound the day it shipped. It says nothing about tomorrow, and the environment around the contract keeps changing β so monitoring has to run continuously.
- Network monitoring watches how mining power is spread and flags a 51% attack early.
- Machine-learning analysis spots spending and laundering patterns that fixed, rule-based filters miss.
- Node protection watches each node's connections and resource use. It catches an eclipse attack β where an attacker surrounds a node with malicious peers to cut it off from the honest network β and isolates the compromised node before the damage spreads.
Conclusion
Almost all of that risk above comes down to one thing β what you hold yourself: keys, client funds, personal data. Hold none of it, and whole classes of attack, plus part of the GDPR burden, stop being your problem. That's what a non-custodial model does.
The ChangeNOW API works exactly that way. Keys stay with your users, client funds never touch your balance, and you collect no personal data. As a non-custodial partner with a current SOC 2 and off-chain storage, ChangeNOW carries part of the compliance load for you. One integration gives your customers 1500+ assets, 90+ networks, and fixed or floating rates β and your partner revenue runs from 0.4% on every exchange.
