eToro Plus

2FA Authentication Research โ€” Confidential

SMS 2FA is Broken.
Here's What to Do.

A comprehensive analysis of authentication alternatives for eToro Plus โ€” from TOTP authenticator apps to WebAuthn passkeys.

$48M+
Lost to SIM swap fraud (FBI 2023)
80%
Breaches involve weak credentials
$0
Cost per TOTP authentication
4-6w
Time to ship Phase 1

๐Ÿ“š Documentation Hub

The Problem

Why SMS-based 2FA is failing eToro users and putting the platform at risk

๐Ÿ”„

SIM Swapping Attacks

Attackers social-engineer carriers to port victim's phone number. All SMS OTPs then go to the attacker. FBI reported $48M+ in losses in 2023 alone โ€” financial accounts are primary targets.

High Risk Active Threat
๐Ÿ“ก

SS7 Protocol Vulnerabilities

The SS7 telecom protocol (from 1975) has zero authentication. Anyone with network access can intercept SMS in real-time. German researchers demonstrated this on live TV, draining bank accounts.

Unfixable Infrastructure Level
โœˆ๏ธ

Fails Internationally

5-30% SMS failure rate when roaming. Users traveling abroad (like being away for 2 weeks) get completely locked out. Local SIMs, eSIM switches, or carrier blocks all break SMS delivery.

User Lockout Support Cost
โš–๏ธ

Regulatory Pressure

NIST deprecated SMS 2FA in 2017. PSD2 SCA increasingly views SMS as insufficient. FCA expects "robust" authentication. Regulators are moving away from SMS โ€” eToro should get ahead.

PSD2 FCA NIST
๐Ÿ’ธ

Expensive at Scale

SMS costs $0.01-0.05 per message. At 1M users authenticating twice daily, that's $7-36M per year. TOTP authenticator costs $0. WebAuthn costs $0. The math is clear.

$7-36M/year TOTP = $0
๐Ÿช

Competitors Have Moved On

Coinbase, Binance, Interactive Brokers, Wise, and Revolut all offer authenticator app or better. Only Plus500 is still SMS-only. Don't be Plus500.

Competitive Gap

Solutions Comparison

Authentication methods ranked by security, cost, and user experience

Method Security Phishing-Proof Works Offline Cost/Auth UX Score Recommendation
SMS OTP โ˜…โ˜…โ˜†โ˜†โ˜† No No $0.01-0.05 โ˜…โ˜…โ˜…โ˜†โ˜† Deprecate
TOTP Authenticator โ˜…โ˜…โ˜…โ˜†โ˜† No Yes $0.00 โ˜…โ˜…โ˜…โ˜†โ˜† โ˜… Phase 1
Push Notification โ˜…โ˜…โ˜…โ˜…โ˜† Partial No $0.001-0.005 โ˜…โ˜…โ˜…โ˜…โ˜† Optional
WebAuthn / Passkeys โ˜…โ˜…โ˜…โ˜…โ˜… Yes Yes $0.00 โ˜…โ˜…โ˜…โ˜…โ˜… โ˜… Phase 2

Authenticator App Comparison

AppiOSAndroidDesktopBiometricCloud BackupOpen SourceBest For
Google Authenticatorโœ…โœ…โŒโŒโœ…โŒWidest adoption
Microsoft Authenticatorโœ…โœ…โŒโœ…โœ…โŒEnterprise / M365
Authyโœ…โœ…โœ…โœ…โœ…โŒMulti-device
1Password / Bitwardenโœ…โœ…โœ…โœ…โœ…PartialConvenience
Apple Keychainโœ…โŒmacOSโœ…โœ…โŒApple users (zero-install)
AegisโŒโœ…โŒโœ…Manualโœ… GPL-3Android power users

Standards & Protocols

TOTP (RFC 6238) Recommended Phase 1

Time-based One-Time Password. Shared secret + timestamp generates 6-digit code every 30 seconds. Universal standard โ€” works with ANY authenticator app. Simple to implement with otplib.

WebAuthn / FIDO2 Recommended Phase 2

Public-key cryptography. Device signs challenge with private key that never leaves the device. Phishing-proof (origin-bound), no shared secrets, biometric UX. The future of authentication.

Passkeys (Synced WebAuthn)

WebAuthn credentials synced via iCloud Keychain / Google Password Manager. Replaces BOTH password AND 2FA. Apple, Google, Microsoft all support. 10B+ passkey registrations globally.

Competitor Audit

How other brokers and fintech platforms handle 2FA โ€” click each card to expand

Competitive Position

PlatformTOTP AppWebAuthnPushBiometricSMSRating
Coinbaseโœ…โœ…โŒโœ…โœ…Leader
Binanceโœ…โœ…โœ…โœ…โœ…Leader
IBKRโœ…โŒโœ…โœ…โŒStrong
RevolutโŒโŒโœ…โœ…โŒInnovative
Wiseโœ…โŒโœ…โœ…โœ…Good
Robinhoodโœ…โŒโŒโœ…โœ…Adequate
eToro (now)โŒโŒโŒโŒโœ…Behind
eToro (proposed)โœ…โœ…โŒโœ…โœ…Leader
Plus500โŒโŒโŒโŒโœ…Laggard

UX Flow โ€” Interactive Mockup

The proposed 2FA setup experience in eToro Plus โ€” click through each step

Step 1 / 7

Open Source Stack

Recommended libraries and platforms for implementation

Recommended Stack (Node.js/TypeScript)

otplib โ˜… TOTP

~12K GitHub stars ยท MIT License ยท Active maintenance

Best TOTP library for Node.js. TypeScript-first, modular architecture. Handles TOTP generation, verification, QR URI generation. Production-ready.

npm install otplib

@simplewebauthn โ˜… WebAuthn

~5K GitHub stars ยท MIT License ยท Active (Auth0 sponsored)

Best WebAuthn/FIDO2 library. Server + Browser packages. TypeScript-first. Supports Deno, Cloudflare Workers. Comprehensive docs.

npm install @simplewebauthn/server

Alternative Stacks

LanguageTOTP LibraryStarsWebAuthn LibraryStarsStatus
Node.jsotplib~12K@simplewebauthn~5Kโ˜… Recommended
Javajava-totp~700webauthn4j~400Good
Pythonpyotp~3Kpython-fido2~800Good
Gopquerna/otp~2Kgo-webauthn~1.2KGood

Full IAM Platforms (Open Source)

PlatformStarsLanguageTOTPWebAuthnNotes
Keycloak~24KJavaโœ…โœ…Red Hat backed. Full IAM. Heavy but complete.
Authelia~22KGoโœ…โœ…Lightweight auth proxy. Great for reverse-proxy.
Authentik~14KPythonโœ…โœ…Modern. Beautiful admin UI. Growing fast.
Ory Kratos~13KGoโœ…โœ…Cloud-native, API-first. Ory Cloud SaaS option.

Build vs Buy

OptionCost (Year 1)Cost (Ongoing/yr)Time to ShipControlVerdict
Build (OSS libs)$50-80K dev~$0 + maintenance4-6 weeksFullโ˜… Recommended
Auth0 (Okta)$2-5M$2-5M2-4 weeksLimitedToo expensive
Twilio Verify$36M+$36M+1-2 weeksModerateWay too expensive
OneSpanCustomCustom8-12 weeksLowOverkill

Implementation Plan

Phased rollout from TOTP to passwordless

Phase 1: TOTP Authenticator Support

Weeks 1-6 ยท Q1 2026 ยท 2 backend + 1 frontend + 1 mobile

TOTP setup/verify flow, backup codes (10 single-use), trusted devices ("remember 30 days"), recovery flow, SMS deprecation label. Covers 95% of the security gap. Works with Google Authenticator, Microsoft Authenticator, Authy, Apple Keychain, 1Password, or any TOTP app.

Phase 1.5: Migration & Adoption

Ongoing ยท Q1-Q2 2026 ยท Product + Marketing

Soft migration: Prompt SMS users to upgrade. Security score nudge. Require authenticator for high-value withdrawals. Progressive enforcement based on account balance. Target: 50%+ adoption in 3 months.

Phase 2: WebAuthn / Passkeys

Weeks 7-14 ยท Q2-Q3 2026 ยท 2 backend + 1 frontend + 1 mobile

Phishing-proof authentication. Support platform authenticators (Touch ID, Face ID, Windows Hello) and roaming authenticators (YubiKey). Multiple authenticators per user. Passkey sync via iCloud/Google.

Phase 3: Passwordless Login

Q4 2026 - 2027 ยท Full squad

"Sign in with passkey" โ€” no password needed. Email magic link alternative. Password becomes optional. Requires regulatory review for FCA/CySEC compliance. Positions eToro as authentication leader.

Migration Strategy (SMS โ†’ Authenticator)

TimelineActionSMS Status
Month 1Launch authenticator as option. Label SMS as "โš ๏ธ Less secure"Available
Month 2-3Active nudge on every login. Email campaign. In-app notificationsAvailable (discouraged)
Month 4-6Require authenticator for withdrawals >$X. Security score incentiveLimited
Month 6-12No SMS for new 2FA setups. Existing users warned of deprecationLegacy only
Month 12+SMS removed as 2FA method. Kept only for account recoveryRecovery only

Cost Analysis

Annual authentication cost comparison at 1M users, 2 authentications per day

SMS OTP
$7.3M - $36.5M / year
Push (Twilio)
$3.6M
Auth0 MFA
$2-5M
Build (OSS)
$50-80K (one-time)
TOTP / WebAuthn
$0 per auth

5-Year Total Cost of Ownership

ApproachYear 1Year 2-55-Year Total
SMS (current)$7-36M$28-146M$35-182M
Auth0$2-5M$8-20M$10-25M
Build with OSS โ˜…$80K$200K (maint)$280K

๐Ÿ’ฐ Bottom Line

Building TOTP + WebAuthn in-house with open-source libraries saves $35-182M over 5 years compared to continuing with SMS, and $10-25M compared to Auth0. The one-time investment of $50-80K pays for itself in the first week of operation.