TM Systems Research Center MilliCent ™ Scrip, security and secrets Dr. Mark S. Manasse DIGITAL Systems Research Center, Palo Alto

Slides:



Advertisements
Similar presentations
Chapter 10 Encryption: A Matter of Trust. Awad –Electronic Commerce 1/e © 2002 Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic Algorithm.
Advertisements

Key Management Nick Feamster CS 6262 Spring 2009.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
SECURITY IN E-COMMERCE VARNA FREE UNIVERSITY Prof. Teodora Bakardjieva.
Digital Signatures and Hash Functions. Digital Signatures.
Understanding Networked Applications: A First Course Chapter 14 by David G. Messerschmitt.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
1 Digital Signatures & Authentication Protocols. 2 Digital Signatures have looked at message authentication –but does not address issues of lack of trust.
Payment Systems 1. Electronic Payment Schemes Schemes for electronic payment are multi-party protocols Payment instrument modeled by electronic coin that.
ELECTRONIC PAYMENT SYSTEMSFALL 2002COPYRIGHT © 2002 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 6 Epayment Security II.
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
Micro-Payment Protocols and Systems Speaker: Jerry Gao Ph.D. San Jose State University URL:
Dr Alejandra Flores-Mosri Message Authentication Internet Management & Security 06 Learning outcomes At the end of this session, you should be able to:
ELECTRONIC PAYMENT SYSTEMS FALL 2002COPYRIGHT © 2002 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 10 Micropayments II.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
Cryptography1 CPSC 3730 Cryptography Chapter 10 Key Management.
Electronic Check Payment Protocols and Systems
1 Applications of Computers Lecture-3 2 E-Commerce 4 Almost all major companies have their homes on the web, mainly for advertising 4 Companies were.
Presented by Xiaoping Yu Cryptography and PKI Cosc 513 Operating System Presentation Presented to Dr. Mort Anvari.
CS470, A.SelcukPublic Key Cryptography1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
ELECTRONIC PAYMENT SYSTEMS SPRING 2004 COPYRIGHT © 2004 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 9: Micropayments II.
CSE331: Introduction to Networks and Security Lecture 20 Fall 2002.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
ELECTRONIC PAYMENT SYSTEMSFALL 2001COPYRIGHT © 2001 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 6 Epayment Security II.
Public Key Cryptography RSA Diffie Hellman Key Management Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
ELECTRONIC PAYMENT SYSTEMSFALL 2001COPYRIGHT © 2001 MICHAEL I. SHAMOS eCommerce Technology Lecture 10 Micropayments II.
Cryptography and Network Security Chapter 10. Chapter 10 – Key Management; Other Public Key Cryptosystems No Singhalese, whether man or woman, would venture.
Electronic Payment Systems. Transaction reconciliation –Cash or check.
TrustPort Public Key Infrastructure. Keep It Secure Table of contents  Security of electronic communications  Using asymmetric cryptography.
Financial Transactions on Internet Financial transactions require the cooperation of more than two parties. Transaction must be very low cost so that small.
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
CSE 597E Fall 2001 PennState University1 Digital Signature Schemes Presented By: Munaiza Matin.
ASYMMETRIC CIPHERS.
1 Fluency with Information Technology Lawrence Snyder Chapter 17 Privacy & Digital Security Encryption.
Information Security and Management 13. Digital Signatures and Authentication Protocols Chih-Hung Wang Fall
1 Cryptography Cryptography is a collection of mathematical techniques to ensure confidentiality of information Cryptography is a collection of mathematical.
1 Public-Key Cryptography and Message Authentication Ola Flygt Växjö University, Sweden
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Chapter 14 Encryption: A Matter Of Trust. Awad –Electronic Commerce 2/e © 2004 Pearson Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic.
Secure Electronic Transaction (SET)
Key Management and Diffie- Hellman Dr. Monther Aldwairi New York Institute of Technology- Amman Campus 12/3/2009 INCS 741: Cryptography 12/3/20091Dr. Monther.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Information Security Fundamentals Major Information Security Problems and Solutions Department of Computer Science Southern Illinois University Edwardsville.
Introduction to Secure Sockets Layer (SSL) Protocol Based on:
E-Commerce Security Professor: Morteza Anvari Student: Xiaoli Li Student ID: March 10, 2001.
Lecture 8 e-money. Today Secure Electronic Transaction (SET) CyberCash On line payment system using e-money ECash NetCash MilliCent CyberCoin.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
TM MilliCent Scrip, Security and Secrets TM Dr. Mark S. Manasse DIGITAL Systems Research Center, Palo Alto
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Chapter 21 Public-Key Cryptography and Message Authentication.
Cryptography and Network Security (CS435) Part Eight (Key Management)
Chapter 16 Security Introduction to CS 1 st Semester, 2012 Sanghyun Park.
Middleware for Secure Environments Presented by Kemal Altıntaş Hümeyra Topcu-Altıntaş Osman Şen.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Merkle trees Introduced by Ralph Merkle, 1979 An authentication scheme
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Module 9 Micropayment systems. Properties of micropayment systems Micropayments do not have a real-world cash equivalent – cash cannot be divided into.
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Mar 18, 2003Mårten Trolin1 Agenda Parts that need to be secured Card authentication Key management.
Key Management public-key encryption helps address key distribution problems have two aspects of this: – distribution of public keys – use of public-key.
Basics of Cryptography
Electronic Payment Security Technologies
Presentation transcript:

TM Systems Research Center MilliCent ™ Scrip, security and secrets Dr. Mark S. Manasse DIGITAL Systems Research Center, Palo Alto

TM Systems Research Center Microcommerce Microcommerce is commerce where each transaction may be inexpensive. For us, “inexpensive” is around 0.1¢/transaction. Others set the limit at $1/transaction. Microcommerce allows transactions for: –news articles, –stock quotes, –index queries.

TM Systems Research Center Why is microcommerce difficult? The vendor and the financial agent need adequate revenue, despite: –small (0.1¢, by my definition) transactions –on-line service no one wants to wait a long time for a page –reasonable commissions –liability issues

TM Systems Research Center Designing a financial system Customers sign up with a financial intermediary –software implements “wallet” functionality –wallet is loaded from credit card or bank account Value is transferred from wallet to vendor as needed Four basic approaches –centralized notational (e.g., CyberCoin, NetBill) –distributed notational (e.g., Mondex) –centralized token (e.g., Millicent, DigiCash) –distributed token (e.g., PayWord, MiniPay)

TM Systems Research Center Cryptography Public-key versus shared-key –RSA versus DES Authentication versus encryption –Signature and identity versus privacy Public key signatures are non-repudiable Shared-key authentication can be produced by anyone holding the shared key

TM Systems Research Center Public-key cryptography 1: RSA Do arithmetic in group of integers mod p  q. Given public key e, private key d can be found from inverting e mod p-1 and q-1, and then using the Chinese remainder theorem. Encryption and decryption are done by exponentiating message to the e or d power. Fermat’s little theorem makes it work: –m^(1+k*(p-1)) = m (mod p)

TM Systems Research Center Public-key cryptography 2: El Gamal Instead of using difficulty of factoring, we can use difficulty of taking discrete logarithms. Pick a modulus and a generator of a large subgroup. Secret keys are random numbers; public keys are the generator to the secret key power. Encrypt a message by picking a blinding exponent, and multiplying the message by public key to the exponent. Also send generator to the exponent; recipient can raise to the secret key, and divide.

TM Systems Research Center Public-key cryptography 3: other cool tricks Key exchange (Diffie-Hellman) Different arithmetic groups –elliptic curves

TM Systems Research Center Shared-key cryptography DES, RC-4, etc. work by having permutation functions that take the key and data and mix the bits in a seemingly random (and hard to analyze) fashion. We can still hide information from people who don’t know the key, but not from each other.

TM Systems Research Center Hash functions A one-way hash function, like MD5 or HMAC-MD5, has the properties: –one-way: given hash(S), it is hard to find S –collision-free: given S and hash(S), it is hard to find T such that S  T  and  hash(S) = hash(T)

TM Systems Research Center Applications of one-way hash functions Suppose that A and B share a secret S. When A wants to communicate M to B: –for integrity and authenticity A can send hash(M,S) together with M, B can check hash(M,S). –for secrecy A can generate and send a random number N, and hash(N,S) XOR M, instead of M, only A and B can recover M.

TM Systems Research Center Performance guidelines: cryptographic costs Very roughly, a commodity computer can do: –public-key cryptography (RSA 1024bits) 20 signatures or 100 verifications/second –shared-key cryptography (DES) 10,000s encryptions/second 1MByte/second –one-way hashing (MD5, SHA-1) 100,000s hashes/second 15MBytes/second, i.e. network speed

TM Systems Research Center Performance guidelines: disk and network costs Generously, a commodity computer can do: –100 seeks/disk/second In Millicent, needed data fits in memory. –1000 TCP connections/second Alta Vista front-end machines handle 100 connections/second each on average.

TM Systems Research Center Vendor: assumptions and calculations There are roughly 30M seconds/year. The cost of business is ¥15M/computer/year. –Average revenue must be at least ¥½/second. Because of burstiness, the vendor may have a 50:1 peak to average load. –So it must reach a 25¢/second peak. If the average transaction is for ¥0.1, the vendor must be able to handle 250 transactions/second. In addition, the vendor must pay for merchandise.

TM Systems Research Center Financial agent: assumptions and calculations The agent gets a (roughly) 2% commission. –It must have a ¥25/second average revenue. Because of burstiness, an on-line agent may have a 10:1 peak-to-average load. –So it must reach a ¥250/second peak. For ¥0.1 average transaction, the agent must handle 2500 transactions/second. Something has to give: –transaction grain –commission –on-line

TM Systems Research Center Millicent: concepts Scrip [~ software pre-paid phone card, with PIN] –vendor-specific currency not quite cash, account, bearer certificate,... –generated by either brokers or vendors –based on secrets and cryptography Brokers –financial agents that handle real money –sellers of vendor scrip to customers Vendors Customers

TM Systems Research Center Broker (actually, a broker network) The big picture Vendor Using secure macrocommerce, exchange money for scrip sold by broker Using broker scrip, customer purchases vendor scrip. Customer Exchange the vendor ’ s scrip for service. $ (weekly) $$$ (monthly) Jurisdiction B Jurisdiction C Jurisdiction V Using secure macrocommerce, exchange money for broker scrip.

TM Systems Research Center A closer look at a piece of scrip A piece of scrip consists of a body, with the following fields: –Vendor: a name for the vendor, –Props: any data describing customer properties (possibly including a name), –Value: the value of the scrip, –Expiry: the expiration time for the scrip, –ID#, Cust ID#: some ID material and of a hash: – Stamp: a proof of validity for the piece of scrip.

TM Systems Research Center A closer look at the stamp of a piece of scrip Stamp = hash(Scrip body, Master scrip secret) Master scrip secret is used for certifying scrip. –It is not known to the customer. –It is used for many pieces of scrip for one vendor. ID# identifies Master scrip secret, and in addition includes a sequence number.

TM Systems Research Center Hash Master scrip secret 5 Stamp Vendor Value ID# Cust ID# Expiry Props Customer Master scrip secret 4 Master scrip secret 5 Master scrip secret 6 Scrip stamp generation (at vendor or broker)

TM Systems Research Center Hash Master scrip secret 5 Stamp Vendor Value ID# Cust ID# Expiry Props Customer Master scrip secret 4 Master scrip secret 5 Master scrip secret 6 Stamp Compare Scrip stamp validation (at vendor)

TM Systems Research Center Making a purchase The customer generates a request and attaches some scrip to it. –The customer provides an integrity check using a customer secret (CS) shared with the vendor. –The customer sends Scrip, Request, hash(Scrip, Request, CS) The vendor checks the integrity of the request and the validity of the scrip. Then the vendor sends a reply and any change: Scrip’, Reply, hash(Scrip’, Stamp, Reply, CS)

TM Systems Research Center RequestScripCustomer secret Hash Request stamp Request stamp computation (at customer and vendor)

TM Systems Research Center The customer secret Customer secret does not require extra negotiation. –Customer secret is derived from another secret, Master customer secret. Customer secret = hash(Cust ID#, Master customer secret) Master customer secret is not known to the customer. –It is used for many customers of one vendor. Cust ID# identifies Master customer secret, and in addition includes a sequence number.

TM Systems Research Center Master customer secret 2 Master customer secret 3 Master customer secret 4 Master customer secret 3 Customer secret Hash Vendor Value ID# Cust ID# Expiry Props Cust ID# Customer secret computation (at broker or vendor)

TM Systems Research Center The cost of processing a purchase The vendor verifies adequacy of payment, plus: –a scrip stamp using 1 hash (against tampering), –a request stamp using 2 hashes (against theft) for customer secret and request stamp, –serial number (against double-spending). The vendor provides service and returns change using 2 hashes for new scrip and reply stamps. For a scrip purchase the broker does 3 more hashes to create and transmit scrip and customer secret.

TM Systems Research Center Advantages of scrip Because scrip is vendor-specific currency, double-spending is easy to detect. –It requires only a local lookup (using a unique sequence number). –In contrast, other kinds of currency may require a round-trip to a central authority. Forgery is hard. –Scrip includes a stamp. Scrip cannot be stolen. –Payment is cryptographically tied to request.

TM Systems Research Center VendorServer WebServer Vendor Price File Document Tree Browser Wallet User Browser Cache Wallet Contents BrokerServer Broker HTTP PriceConfigurator MilliCent System Architecture

TM Digital Equipment Corporation ©