Store, Forget & Check: Using Algebraic Signatures to Check Remotely Administered Storage

Size: px
Start display at page:

Download "Store, Forget & Check: Using Algebraic Signatures to Check Remotely Administered Storage"

Transcription

1 Store, Forget & Check: Using Algebraic Signatures to Check Remotely Administered Storage Ethan L. Miller & Thomas J. E. Schwarz Storage Systems Research Center University of California, Santa Cruz

2 What s the problem? Systems store data on remote nodes Remote nodes may not be trustworthy Data owner must check to ensure that data is really stored Two current approaches: Read data from multiple sites and check for consistency Generate checksum remotely and compare to checksum of local data We developed an efficient algorithm that does not require keeping a local copy of the data 2

3 Internet storage: backup Participants in the scheme offer limited storage on their machine in exchange for storing their own data Data protected using parity or redundancy Extra blocks calculated using m/n redundancy codes Generate n blocks Require any m of the blocks to rebuild the data Many known mechanisms for m/n codes Linear interpolation XOR and Galois field-based Participants need to be able to verify that other nodes are doing their part... 3

4 Storage Service Providers Storage utility provides remotely managed storage Client sends data to the SSP Client retrieves data as needed Trust issue: how can client tell if SSP is doing its job? Read data, check (public key-based) signature Read data, decrypt, check secure hash and object ID SafeStore does something like this Other approaches that don t use network bandwidth? 4

5 Peer-to-peer file systems Farsite: uses free space on workstations within an organization Freehaven: anonymity of storer OceanStore Billions of users Byzantine fault tolerance, k-availability through erasurecodes PAST Users can store files up to their quota Provides k-availability through replication CFS, Intermemory, Ivy, Starfish, 5

6 Common challenges Storage nodes cannot be trusted Storage nodes might lack high uplink bandwidth Storage nodes might have low availability Free Rider problem Node pretends to store data In reality, uses replicas (or protection against unavailability mechanism) to fetch requested file from elsewhere Gains the benefits of participation without providing storage 6

7 Terribly naïve algorithm Maintain local copy of data Periodically request blocks of data and compare to the local copy Problems Very bandwidth-intensive Can t check much data Need to keep the original! 7

8 Terribly naïve algorithm Maintain local copy of data Periodically request blocks of data and compare to the local copy Problems Very bandwidth-intensive Can t check much data Need to keep the original! 7

9 Terribly naïve algorithm Maintain local copy of data Periodically request blocks of data and compare to the local copy Problems Very bandwidth-intensive Can t check much data Need to keep the original! 7

10 Verification: existing algorithm Periodically, verify random blocks Compute function across the blocks (m/n coding) Alternative: verify keyed hash stored with the block Problems: Need to transfer entire block Taxes network with diagnostic data Peers often have asymmetric Internet connections Leaks information heavily 8

11 Verification: existing algorithm Periodically, verify random blocks Compute function across the blocks (m/n coding) Alternative: verify keyed hash stored with the block Problems: Need to transfer entire block Taxes network with diagnostic data Peers often have asymmetric Internet connections Leaks information heavily 8

12 Verification: existing algorithm Periodically, verify random blocks Compute function across the blocks (m/n coding) Alternative: verify keyed hash stored with the block Problems: Need to transfer entire block Taxes network with diagnostic data Peers often have asymmetric Internet connections Leaks information heavily 8

13 Verification: existing algorithm Periodically, verify random blocks Compute function across the blocks (m/n coding) Alternative: verify keyed hash stored with the block Problems: Need to transfer entire block Taxes network with diagnostic data Peers often have asymmetric Internet connections Leaks information heavily 8

14 Verification using algebraic signatures Solution: use checksums? Cryptographic checksums (like SHA-1) won t work for randomly selected ranges Requires original data for comparison Our scheme Uses small challenges and responses Allows unpredictable tests Free rider can t just store the answer to all possible challenges (with any storage benefit) Verifies that all remote chunks are consistent with each other Requires that parity is calculated with an XOR code, a linear m/n code, or a convolutional code Examples: X-code, EvenOdd, row-diagonal parity, linear codes over a Galois field 9

15 What is a Galois field? Simple answer: Calculations on a set of symbols A field called GF(2 n ) uses n-bit symbols Two kinds of operations Addition (done by XOR) Multiplication (more complex, done by tables) Complex answer: Galois fields are math done using the coefficients of polynomial equations Often, coefficients are represented in base-2 Galois field using polynomials with maximum degree n and base-2 coefficients are called GF(2 n ) This answer explains how the addition and multiplication tables are generated 10

16 What is an algebraic signature? Digital hash with algebraic properties Important properties: Small changes in data result in complete change of signature Signature of parity is parity of signatures D 1 D 2 D 3 D m P 1 P 2 P 3 P k (sig(d 1 ),sig(d 2 ),sig(d 3 ), sig(d m ), sig(p 1 ),sig(p 2 ),sig(p 3 ) sig(p k )) is a codeword! 11

17 Algebraic signatures Defined over same Galois field as the linear m/n code Use primitive element a All non-zero elements are powers of a Consists of n coordinates Additional properties if ai = a i Coordinate signature defined by 12

18 Algebraic signatures Algebraic properties Assume that X and Y are large data objects: sig(x Y) = sig(x) sig(y) sig(β X) = β sig(x) Multiplication is in the Galois field of the signature calculation Signatures and parity formation commute Signatures can be updated from the old signature and the signature of the delta (XOR) between old and new data Signature calculation is fast! Hundreds of megabytes per second on a modern CPU Speed limited by disk bandwidth 13

19 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent 14

20 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent Calculate signature of 32 byte ranges at 4+i 71, i = 5,,20 14

21 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent Calculate signature of 32 byte ranges at 4+i 71, i = 5,,20 14

22 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent sig1 Calculate signature of 32 byte ranges at 4+i 71, i = 5,,20 14

23 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent sig1 sig2 sig3 sigp Calculate signature of 32 byte ranges at 4+i 71, i = 5,,20 14

24 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent sig1 sig2 sig3 sigp 14

25 Our algorithm Store data across distributed system D 1 D 2 D 3 P Challenge sites to prove that they hold the data Sites respond with the signatures of requested data Sites reveal tiny amount of information: size of signature Challenger verifies that the signatures are consistent sig1 sig2 sig3 sigp sig 1 sig 2 sig 3 sig P 14

26 Collusion protection Need for collusion protection All data and parity storing sites could collude to undetectably change the contents of data (or just throw it away) Return signatures that are internally consistent Modify scheme to prevent collusion by: Using random m/n linear codes to generate parity blocks Blinding data or parity by XORing with pseudo-random stream Stream cipher seeded with block ID and secret known only to data owner D1 D2 D3 15

27 Collusion protection Need for collusion protection All data and parity storing sites could collude to undetectably change the contents of data (or just throw it away) Return signatures that are internally consistent Modify scheme to prevent collusion by: Using random m/n linear codes to generate parity blocks Blinding data or parity by XORing with pseudo-random stream Stream cipher seeded with block ID and secret known only to data owner D1 D2 D3 P1 P2 15

28 Collusion protection Need for collusion protection All data and parity storing sites could collude to undetectably change the contents of data (or just throw it away) Return signatures that are internally consistent Modify scheme to prevent collusion by: Using random m/n linear codes to generate parity blocks Blinding data or parity by XORing with pseudo-random stream Stream cipher seeded with block ID and secret known only to data owner D1 D1 D2 D2 D3 D3 P1 P2 15

29 Collusion protection Need for collusion protection All data and parity storing sites could collude to undetectably change the contents of data (or just throw it away) Return signatures that are internally consistent Modify scheme to prevent collusion by: Using random m/n linear codes to generate parity blocks Blinding data or parity by XORing with pseudo-random stream Stream cipher seeded with block ID and secret known only to data owner D1 D1 D2 D3 random D2 D3 P1 P1 P2 15

30 Collusion protection Need for collusion protection All data and parity storing sites could collude to undetectably change the contents of data (or just throw it away) Return signatures that are internally consistent Modify scheme to prevent collusion by: Using random m/n linear codes to generate parity blocks Blinding data or parity by XORing with pseudo-random stream Stream cipher seeded with block ID and secret known only to data owner D1 D1 D2 D2 D3 D3 P1 P1 P2 P2 15

31 Blinding with a random stream XOR data stream with a known pseudo-random stream Algebraic signature of blinded data is the XOR of the signature of the original data and of the blinding stream Data owner need only keep the seed of the pseudo-random stream Reconstruct signature by recalculating stream Pseudo-random stream generator Data 16

32 Blinding with a random stream XOR data stream with a known pseudo-random stream Algebraic signature of blinded data is the XOR of the signature of the original data and of the blinding stream Data owner need only keep the seed of the pseudo-random stream Reconstruct signature by recalculating stream Seed1 Seed2 Pseudo-random stream generator Data 16

33 Blinding with a random stream XOR data stream with a known pseudo-random stream Algebraic signature of blinded data is the XOR of the signature of the original data and of the blinding stream Data owner need only keep the seed of the pseudo-random stream Reconstruct signature by recalculating stream Seed1 Seed2 Pseudo-random stream generator Data Out 16

34 Blinding with random stream Prevent colluding sites from discovering parity calculation scheme by XORing blocks with pseudo-random data Several possibilities: Blind only parity Blind only data after calculating parity Calculate parity, then blind data and parity Blinding must be done after parity calculation Necessary to ensure that storage servers can t solve for the generator matrix Storage servers missing both pseudo-random stream and generator Blinding doesn t prevent data recovery! Example: blinding just the parity means data can be read 17

35 Generating random m/n codes Linear m/n codes are defined over Galois field with 2 f elements Galois fields have addition, subtraction, multiplication, division, 0, 1 Same rules in Galois fields as for real, rational, complex, numbers Code defined by a generator matrix G with m rows and n columns G has special form ( I m P ) I m is the m m identity matrix Every m m submatrix of G is invertible 18

36 Generating random m/n codes Generation of generator matrix with n = 2 f : Start with all 2 f GF elements in a given order: a1, a2, an Order can be changed for a different code Form Vandermonde matrix Use Gaussian algorithm to transfer to desired form Vandermonde matrix Generator matrix 19

37 Generating random m/n codes Given data bytes d 1, d 2, d m, calculate parity bytes by: (d1, d2, dm) G = (d1, d2, dm, p1, p2,, pk) Generate random code by starting with a random permutation of the GF elements Pick a random code using a seed the data owner keeps If all sites collude: G can be reconstructed from known encoding This can be prevented if the sites don t know the correct values of d x or p x for the calculation Blinding ensures they don t! 20

38 Securing a single site Use our scheme to secure data stored on a single site Can place all data and one or two parity chunks on a single site Single site cannot undetectably alter the contents Storage overhead can be made arbitrarily small Anyone knowing the erasure coding and the blinding scheme can now check that the data is stored accurately May use any randomly-selected slice of the data Storage site can t only keep data block hashes 21

39 Securing a single site Use our scheme to secure data stored on a single site Can place all data and one or two parity chunks on a single site Single site cannot undetectably alter the contents Storage overhead can be made arbitrarily small Anyone knowing the erasure coding and the blinding scheme can now check that the data is stored accurately May use any randomly-selected slice of the data Storage site can t only keep data block hashes 21

40 Example Create a backup peer-to-peer system Business model Clients Register with central site Clients pay annual registration fee Clients promise to store 10GB + ~2% on their computer to have their machine connected to the internet at least 20 hours every 24 hours Enterprise promises To establish an addressing scheme that allows clients to store data remotely To verify that clients fulfill their promises 22

41 Example Use of our technique: Enterprise can verify that the data is stored correctly Client might encrypt data to prevent anyone else from rebuilding it May use any desired encryption algorithm, as long as the parity is calculated after encryption Blinding still has to be done... Signatures don t leak much data anyway... Alternative Client that stores data also prepares a number of signature challenges Client gives those to the enterprise Enterprise uses the challenge, but might run out of them 23

42 Future work Implementing a peer-to-peer backup system using this approach Includes techniques from prior peer-to-peer backup systems Adds low-overhead verification Using this technique in POTSHARDS to verify that remote servers are maintaining data Limited leakage is critical for this application Use this technique for storage service providers? 24

43 Conclusions We developed a scheme that can verify data stored on storage sites outside of our administrative control Small challenges and responses Good for network load Limits information leakage to negligible sizes. Sufficient variety to force potential free-loaders to store the data not potential answers Secure against collusion Basic scheme for storage schemes that use parity or m/n coding for high availability Extension to storing data on a single site Incurs arbitrarily small overhead from storing additional parity data 25

44 Questions? More information on the Web at Thanks to SSRC faculty, students, and sponsors! 26

Cloud-related Storage Research in Santa Cruz

Cloud-related Storage Research in Santa Cruz Cloud-related Storage Research in Santa Cruz Darrell Long University of California, Santa Cruz Trading Storage for Computation (and vice versa) 2 Trade Storage for Computation Inputs rocess Result Storing

More information

Pergamum Replacing Tape with Energy Efficient, Reliable, Disk- Based Archival Storage

Pergamum Replacing Tape with Energy Efficient, Reliable, Disk- Based Archival Storage ergamum Replacing Tape with Energy Efficient, Reliable, Disk- Based Archival Storage Mark W. Storer Kevin M. Greenan Ethan L. Miller Kaladhar Voruganti* University of California, Santa Cruz *Network Appliance

More information

Store, Forget, and Check: Using Algebraic Signatures to Check Remotely Administered Storage

Store, Forget, and Check: Using Algebraic Signatures to Check Remotely Administered Storage Store, Forget, and Check: Using Algebraic Signatures to Check Remotely Administered Storage Thomas Schwarz, S.J. Department of Computer Engineering Santa Clara University tjschwarz@scu.edu Ethan L. Miller

More information

Practical Aspects of Modern Cryptography

Practical Aspects of Modern Cryptography Practical Aspects of Modern Cryptography Lecture 3: Symmetric s and Hash Functions Josh Benaloh & Brian LaMacchia Meet Alice and Bob Alice Bob Message Modern Symmetric s Setup: Alice wants to send a private

More information

CS61A Lecture #39: Cryptography

CS61A Lecture #39: Cryptography Announcements: CS61A Lecture #39: Cryptography Homework 13 is up: due Monday. Homework 14 will be judging the contest. HKN surveys on Friday: 7.5 bonus points for filling out their survey on Friday (yes,

More information

Software-defined Storage: Fast, Safe and Efficient

Software-defined Storage: Fast, Safe and Efficient Software-defined Storage: Fast, Safe and Efficient TRY NOW Thanks to Blockchain and Intel Intelligent Storage Acceleration Library Every piece of data is required to be stored somewhere. We all know about

More information

Remote Data Checking for Network Codingbased. Distributed Storage Systems

Remote Data Checking for Network Codingbased. Distributed Storage Systems CCSW 0 Remote Data Checking for Network Coding-based Bo Chen, Reza Curtmola, Giuseppe Ateniese, Randal Burns New Jersey Institute of Technology Johns Hopkins University Motivation Cloud storage can release

More information

Overview of the Storage Systems Research Center Darrell Long & Ethan Miller Jack Baskin School of Engineering

Overview of the Storage Systems Research Center Darrell Long & Ethan Miller Jack Baskin School of Engineering Overview of the Storage Systems Research Center Darrell Long & Ethan Miller Jack Baskin School of Engineering The SSRC in one slide Research Challenges Exascale capacity & scalability erformance Security

More information

Peer-to-Peer Networks 14 Security. Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg

Peer-to-Peer Networks 14 Security. Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg Peer-to-Peer Networks 14 Security Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg Cryptography in a Nutshelf Symmetric Cryptography - AES - Affine Cryptosystems

More information

Performance improvements to peer-to-peer file transfers using network coding

Performance improvements to peer-to-peer file transfers using network coding Performance improvements to peer-to-peer file transfers using network coding Aaron Kelley April 29, 2009 Mentor: Dr. David Sturgill Outline Introduction Network Coding Background Contributions Precomputation

More information

Winter 2011 Josh Benaloh Brian LaMacchia

Winter 2011 Josh Benaloh Brian LaMacchia Winter 2011 Josh Benaloh Brian LaMacchia Symmetric Cryptography January 20, 2011 Practical Aspects of Modern Cryptography 2 Agenda Symmetric key ciphers Stream ciphers Block ciphers Cryptographic hash

More information

International Journal of Innovations in Engineering and Technology (IJIET)

International Journal of Innovations in Engineering and Technology (IJIET) RTL Design and Implementation of Erasure Code for RAID system Chethan.K 1, Dr.Srividya.P 2, Mr.Sivashanmugam Krishnan 3 1 PG Student, Department Of ECE, R. V. College Engineering, Bangalore, India. 2 Associate

More information

Erasure coding and AONT algorithm selection for Secure Distributed Storage. Alem Abreha Sowmya Shetty

Erasure coding and AONT algorithm selection for Secure Distributed Storage. Alem Abreha Sowmya Shetty Erasure coding and AONT algorithm selection for Secure Distributed Storage Alem Abreha Sowmya Shetty Secure Distributed Storage AONT(All-Or-Nothing Transform) unkeyed transformation φ mapping a sequence

More information

RAID SEMINAR REPORT /09/2004 Asha.P.M NO: 612 S7 ECE

RAID SEMINAR REPORT /09/2004 Asha.P.M NO: 612 S7 ECE RAID SEMINAR REPORT 2004 Submitted on: Submitted by: 24/09/2004 Asha.P.M NO: 612 S7 ECE CONTENTS 1. Introduction 1 2. The array and RAID controller concept 2 2.1. Mirroring 3 2.2. Parity 5 2.3. Error correcting

More information

Encrypting the Auto Detected Face Part of Human in a Image Using RC4 and Hiding the Data in Image

Encrypting the Auto Detected Face Part of Human in a Image Using RC4 and Hiding the Data in Image Encrypting the Auto Detected Face Part of Human in a Image Using RC4 and Hiding the Data in Image N.Mahesh Chandra M.Tech Student, Sreenidhi Institute of Science and Technology. Abstract: In this paper,

More information

Uses of Cryptography

Uses of Cryptography Uses of Cryptography What can we use cryptography for? Lots of things Secrecy Authentication Prevention of alteration Page 1 Cryptography and Secrecy Pretty obvious Only those knowing the proper keys can

More information

Introduction to the new AES Standard: Rijndael

Introduction to the new AES Standard: Rijndael Introduction to the new AES Standard: Rijndael Paul Donis This paper will explain how the Rijndael Cipher Reference Code in C works. Rijndael is a block cipher that encrypts and decrypts 128, 192, and

More information

Conventional Protection Mechanisms in File Systems

Conventional Protection Mechanisms in File Systems Steganographic File Systems 1 Conventional Protection Mechanisms in File Systems User Access Control The operating system is fully trusted to enforce the security policy. Is it good enough? Operating System

More information

Computer Security. 08r. Pre-exam 2 Last-minute Review Cryptography. Paul Krzyzanowski. Rutgers University. Spring 2018

Computer Security. 08r. Pre-exam 2 Last-minute Review Cryptography. Paul Krzyzanowski. Rutgers University. Spring 2018 Computer Security 08r. Pre-exam 2 Last-minute Review Cryptography Paul Krzyzanowski Rutgers University Spring 2018 March 26, 2018 CS 419 2018 Paul Krzyzanowski 1 Cryptographic Systems March 26, 2018 CS

More information

Security: Cryptography

Security: Cryptography Security: Cryptography Computer Science and Engineering College of Engineering The Ohio State University Lecture 38 Some High-Level Goals Confidentiality Non-authorized users have limited access Integrity

More information

Securing Distributed Computation via Trusted Quorums. Yan Michalevsky, Valeria Nikolaenko, Dan Boneh

Securing Distributed Computation via Trusted Quorums. Yan Michalevsky, Valeria Nikolaenko, Dan Boneh Securing Distributed Computation via Trusted Quorums Yan Michalevsky, Valeria Nikolaenko, Dan Boneh Setting Distributed computation over data contributed by users Communication through a central party

More information

Publicly-verifiable proof of storage: a modular construction. Federico Giacon

Publicly-verifiable proof of storage: a modular construction. Federico Giacon Publicly-verifiable proof of storage: a modular construction Federico Giacon Ruhr-Universita t Bochum federico.giacon@rub.de 6th BunnyTN, Trent 17 December 2015 Proof of Storage Proof of Storage (PoS)

More information

Techniques for Efficiently Ensuring Data Storage Security in Cloud Computing

Techniques for Efficiently Ensuring Data Storage Security in Cloud Computing Techniques for Efficiently Ensuring Data Storage Security in Cloud Computing Vasu Raju, Raj Kumar, and Anand Raj vasuraju_1255@yahoo.com naaniraj@gmail.com, anandsofttech@gmail.com M.Tech (C.S.E), S.r.Engg

More information

Improving data integrity on cloud storage services

Improving data integrity on cloud storage services International Journal of Engineering Science Invention Volume 2 Issue 2 ǁ February. 2013 Improving data integrity on cloud storage services Miss. M.Sowparnika 1, Prof. R. Dheenadayalu 2 1 (Department of

More information

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science Advanced Computer Networks Department of Computer Science DCS COMSATS Institute of Information Technology Rab Nawaz Jadoon Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

Chapter 10 Error Detection and Correction. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Chapter 10 Error Detection and Correction. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 10 Error Detection and Correction 0. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Note The Hamming distance between two words is the number of differences

More information

Notes for Lecture 14

Notes for Lecture 14 COS 533: Advanced Cryptography Lecture 14 (November 6, 2017) Lecturer: Mark Zhandry Princeton University Scribe: Fermi Ma Notes for Lecture 14 1 Applications of Pairings 1.1 Recap Consider a bilinear e

More information

Cryptography Functions

Cryptography Functions Cryptography Functions Lecture 3 1/29/2013 References: Chapter 2-3 Network Security: Private Communication in a Public World, Kaufman, Perlman, Speciner Types of Cryptographic Functions Secret (Symmetric)

More information

Staggeringly Large Filesystems

Staggeringly Large Filesystems Staggeringly Large Filesystems Evan Danaher CS 6410 - October 27, 2009 Outline 1 Large Filesystems 2 GFS 3 Pond Outline 1 Large Filesystems 2 GFS 3 Pond Internet Scale Web 2.0 GFS Thousands of machines

More information

ENGI 8868/9877 Computer and Communications Security III. BLOCK CIPHERS. Symmetric Key Cryptography. insecure channel

ENGI 8868/9877 Computer and Communications Security III. BLOCK CIPHERS. Symmetric Key Cryptography. insecure channel (a) Introduction - recall symmetric key cipher: III. BLOCK CIPHERS k Symmetric Key Cryptography k x e k y yʹ d k xʹ insecure channel Symmetric Key Ciphers same key used for encryption and decryption two

More information

CIS 551 / TCOM 401 Computer and Network Security. Spring 2008 Lecture 23

CIS 551 / TCOM 401 Computer and Network Security. Spring 2008 Lecture 23 CIS 551 / TCOM 401 Computer and Network Security Spring 2008 Lecture 23 Announcements Project 4 is Due Friday May 2nd at 11:59 PM Final exam: Friday, May 12th. Noon - 2:00pm DRLB A6 Today: Last details

More information

CS 161 Computer Security

CS 161 Computer Security Popa & Wagner Spring 2016 CS 161 Computer Security Midterm 2 Print your name:, (last) (first) I am aware of the Berkeley Campus Code of Student Conduct and acknowledge that academic misconduct will be

More information

All About Erasure Codes: - Reed-Solomon Coding - LDPC Coding. James S. Plank. ICL - August 20, 2004

All About Erasure Codes: - Reed-Solomon Coding - LDPC Coding. James S. Plank. ICL - August 20, 2004 All About Erasure Codes: - Reed-Solomon Coding - LDPC Coding James S. Plank Logistical Computing and Internetworking Laboratory Department of Computer Science University of Tennessee ICL - August 2, 24

More information

Introduction to Cryptography in Blockchain Technology. December 23, 2018

Introduction to Cryptography in Blockchain Technology. December 23, 2018 Introduction to Cryptography in Blockchain Technology December 23, 2018 What is cryptography? The practice of developing protocols that prevent third parties from viewing private data. Modern cryptography

More information

Introduction to Software Security Hash Functions (Chapter 5)

Introduction to Software Security Hash Functions (Chapter 5) Introduction to Software Security Hash Functions (Chapter 5) Seong-je Cho Spring 2018 Computer Security & Operating Systems Lab, DKU Sources / References Textbook, Chapter 5. An Illustrated Guide to Cryptographic

More information

CSE 3461/5461: Introduction to Computer Networking and Internet Technologies. Network Security. Presentation L

CSE 3461/5461: Introduction to Computer Networking and Internet Technologies. Network Security. Presentation L CS 3461/5461: Introduction to Computer Networking and Internet Technologies Network Security Study: 21.1 21.5 Kannan Srinivasan 11-27-2012 Security Attacks, Services and Mechanisms Security Attack: Any

More information

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 420, York College. November 21, 2006

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 420, York College. November 21, 2006 November 21, 2006 The memory hierarchy Red = Level Access time Capacity Features Registers nanoseconds 100s of bytes fixed Cache nanoseconds 1-2 MB fixed RAM nanoseconds MBs to GBs expandable Disk milliseconds

More information

Providing File Services using a Distributed Hash Table

Providing File Services using a Distributed Hash Table Providing File Services using a Distributed Hash Table Lars Seipel, Alois Schuette University of Applied Sciences Darmstadt, Department of Computer Science, Schoefferstr. 8a, 64295 Darmstadt, Germany lars.seipel@stud.h-da.de

More information

Advantages of P2P systems. P2P Caching and Archiving. Squirrel. Papers to Discuss. Why bother? Implementation

Advantages of P2P systems. P2P Caching and Archiving. Squirrel. Papers to Discuss. Why bother? Implementation Advantages of P2P systems P2P Caching and Archiving Tyrone Nicholas May 10, 2004 Redundancy built in - by definition there are a large number of servers Lends itself automatically to multiple copies of

More information

BS801E-BSCS. Cryptography

BS801E-BSCS. Cryptography Jay-Ar Baliguat BS801E-BSCS Ms.Myrlen Maria Antoni Cryptography Cryptography can be defined as the conversion of data into a scrambled code that can be deciphered and sent across a public or private network.

More information

-3- Additionally or alternatively, the invention may comprise a method of controlling access to a digital wallet, the method comprising the steps:

-3- Additionally or alternatively, the invention may comprise a method of controlling access to a digital wallet, the method comprising the steps: -1- Secure Multiparty loss resistant Storage and Transfer of Cryptographic Keys for blockchain based systems in conjunction with a wallet management system 1 This invention relates generally to computer

More information

n-bit Output Feedback

n-bit Output Feedback n-bit Output Feedback Cryptography IV Encrypt Encrypt Encrypt P 1 P 2 P 3 C 1 C 2 C 3 Steven M. Bellovin September 16, 2006 1 Properties of Output Feedback Mode No error propagation Active attacker can

More information

Distributed Operating Systems

Distributed Operating Systems 2 Distributed Operating Systems System Models, Processor Allocation, Distributed Scheduling, and Fault Tolerance Steve Goddard goddard@cse.unl.edu http://www.cse.unl.edu/~goddard/courses/csce855 System

More information

Crypto-systems all around us ATM machines Remote logins using SSH Web browsers (https invokes Secure Socket Layer (SSL))

Crypto-systems all around us ATM machines Remote logins using SSH Web browsers (https invokes Secure Socket Layer (SSL)) Introduction (Mihir Bellare Text/Notes: http://cseweb.ucsd.edu/users/mihir/cse207/) Cryptography provides: Data Privacy Data Integrity and Authenticity Crypto-systems all around us ATM machines Remote

More information

This chapter continues our overview of public-key cryptography systems (PKCSs), and begins with a description of one of the earliest and simplest

This chapter continues our overview of public-key cryptography systems (PKCSs), and begins with a description of one of the earliest and simplest 1 2 3 This chapter continues our overview of public-key cryptography systems (PKCSs), and begins with a description of one of the earliest and simplest PKCS, Diffie- Hellman key exchange. This first published

More information

An Improved Algebraic Attack on Hamsi-256

An Improved Algebraic Attack on Hamsi-256 An Improved Algebraic Attack on Hamsi-256 Itai Dinur and Adi Shamir Computer Science department The Weizmann Institute Rehovot 76100, Israel Abstract. Hamsi is one of the 14 second-stage candidates in

More information

Key establishment in sensor networks

Key establishment in sensor networks Security and Cooperation in Wireless Networks http://secowinet.epfl.ch/ key types; establishment of link keys using a shortterm master key; random key predistribution: - the basic scheme, and - some improvements;

More information

CT30A8800 Secured communications

CT30A8800 Secured communications CT30A8800 Secured communications Pekka Jäppinen October 31, 2007 Pekka Jäppinen, Lappeenranta University of Technology: October 31, 2007 Secured Communications: Key exchange Schneier, Applied Cryptography:

More information

Introduction to cryptology (GBIN8U16)

Introduction to cryptology (GBIN8U16) Introduction to cryptology (GBIN8U16) Finite fields, block ciphers Pierre Karpman pierre.karpman@univ-grenoble-alpes.fr https://www-ljk.imag.fr/membres/pierre.karpman/tea.html 2018 01 31 Finite fields,

More information

Encrypted Data Deduplication in Cloud Storage

Encrypted Data Deduplication in Cloud Storage Encrypted Data Deduplication in Cloud Storage Chun- I Fan, Shi- Yuan Huang, Wen- Che Hsu Department of Computer Science and Engineering Na>onal Sun Yat- sen University Kaohsiung, Taiwan AsiaJCIS 2015 Outline

More information

FLAT DATACENTER STORAGE. Paper-3 Presenter-Pratik Bhatt fx6568

FLAT DATACENTER STORAGE. Paper-3 Presenter-Pratik Bhatt fx6568 FLAT DATACENTER STORAGE Paper-3 Presenter-Pratik Bhatt fx6568 FDS Main discussion points A cluster storage system Stores giant "blobs" - 128-bit ID, multi-megabyte content Clients and servers connected

More information

Stream Ciphers. Stream Ciphers 1

Stream Ciphers. Stream Ciphers 1 Stream Ciphers Stream Ciphers 1 Stream Ciphers Generate a pseudo-random key stream & xor to the plaintext. Key: The seed of the PRNG Traditional PRNGs (e.g. those used for simulations) are not secure.

More information

SECRET SHARING SECRET SPLITTING

SECRET SHARING SECRET SPLITTING Clemens H. Cap Universität Rostock clemens.cap (at) uni-rostock (dot) de SECRET SHARING SECRET SPLITTING BaSoTI 2012, Tartu Anecdotal Problem Trent wants to give Alice and Bob access to the safe Trent

More information

Cryptography [Symmetric Encryption]

Cryptography [Symmetric Encryption] CSE 484 / CSE M 584: Computer Security and Privacy Cryptography [Symmetric Encryption] Spring 2017 Franziska (Franzi) Roesner franzi@cs.washington.edu Thanks to Dan Boneh, Dieter Gollmann, Dan Halperin,

More information

Data Encryption Standard (DES)

Data Encryption Standard (DES) Data Encryption Standard (DES) Best-known symmetric cryptography method: DES 1973: Call for a public cryptographic algorithm standard for commercial purposes by the National Bureau of Standards Goals:

More information

FLAT DATACENTER STORAGE CHANDNI MODI (FN8692)

FLAT DATACENTER STORAGE CHANDNI MODI (FN8692) FLAT DATACENTER STORAGE CHANDNI MODI (FN8692) OUTLINE Flat datacenter storage Deterministic data placement in fds Metadata properties of fds Per-blob metadata in fds Dynamic Work Allocation in fds Replication

More information

Failure models. Byzantine Fault Tolerance. What can go wrong? Paxos is fail-stop tolerant. BFT model. BFT replication 5/25/18

Failure models. Byzantine Fault Tolerance. What can go wrong? Paxos is fail-stop tolerant. BFT model. BFT replication 5/25/18 Failure models Byzantine Fault Tolerance Fail-stop: nodes either execute the protocol correctly or just stop Byzantine failures: nodes can behave in any arbitrary way Send illegal messages, try to trick

More information

Chapter 13. Digital Cash. Information Security/System Security p. 570/626

Chapter 13. Digital Cash. Information Security/System Security p. 570/626 Chapter 13 Digital Cash Information Security/System Security p. 570/626 Introduction While cash is used in illegal activities such as bribing money laundering tax evasion it also protects privacy: not

More information

Lecture 9a: Secure Sockets Layer (SSL) March, 2004

Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu Security Achieved by

More information

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems

P2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems P2P Alex S. 1 Introduction The systems we will examine are known as Peer-To-Peer, or P2P systems, meaning that in the network, the primary mode of communication is between equally capable peers. Basically

More information

! Design constraints. " Component failures are the norm. " Files are huge by traditional standards. ! POSIX-like

! Design constraints.  Component failures are the norm.  Files are huge by traditional standards. ! POSIX-like Cloud background Google File System! Warehouse scale systems " 10K-100K nodes " 50MW (1 MW = 1,000 houses) " Power efficient! Located near cheap power! Passive cooling! Power Usage Effectiveness = Total

More information

QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING

QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING QUALITY OF SEVICE WITH DATA STORAGE SECURITY IN CLOUD COMPUTING ABSTRACT G KALYANI 1* 1. M.Tech Student, Dept of CSE Indira Institute of Engineering and Technology, Markapur, AP. Cloud computing has been

More information

CSE 127: Computer Security Cryptography. Kirill Levchenko

CSE 127: Computer Security Cryptography. Kirill Levchenko CSE 127: Computer Security Cryptography Kirill Levchenko October 24, 2017 Motivation Two parties want to communicate securely Secrecy: No one else can read messages Integrity: messages cannot be modified

More information

Security (and finale) Dan Ports, CSEP 552

Security (and finale) Dan Ports, CSEP 552 Security (and finale) Dan Ports, CSEP 552 Today Security: what if parts of your distributed system are malicious? BFT: state machine replication Bitcoin: peer-to-peer currency Course wrap-up Security Too

More information

TIBX NEXT-GENERATION ARCHIVE FORMAT IN ACRONIS BACKUP CLOUD

TIBX NEXT-GENERATION ARCHIVE FORMAT IN ACRONIS BACKUP CLOUD TIBX NEXT-GENERATION ARCHIVE FORMAT IN ACRONIS BACKUP CLOUD 1 Backup Speed and Reliability Are the Top Data Protection Mandates What are the top data protection mandates from your organization s IT leadership?

More information

Cryptography in Lotus Notes/Domino Pragmatic Introduction for Administrators

Cryptography in Lotus Notes/Domino Pragmatic Introduction for Administrators Cryptography in Lotus Notes/Domino Pragmatic Introduction for Administrators Belfast, 11-Nov-2010 Innovative Software Solutions. Thomas Bahn - graduated in mathematics, University of Hannover - developing

More information

ECE Enterprise Storage Architecture. Fall 2018

ECE Enterprise Storage Architecture. Fall 2018 ECE590-03 Enterprise Storage Architecture Fall 2018 RAID Tyler Bletsch Duke University Slides include material from Vince Freeh (NCSU) A case for redundant arrays of inexpensive disks Circa late 80s..

More information

Improving Bandwidth Efficiency of Peer-to-Peer Storage

Improving Bandwidth Efficiency of Peer-to-Peer Storage Improving Bandwidth Efficiency of Peer-to-Peer Storage Patrick Eaton, Emil Ong, John Kubiatowicz University of California, Berkeley http://oceanstore.cs.berkeley.edu/ P2P Storage: Promise vs.. Reality

More information

Syrvey on block ciphers

Syrvey on block ciphers Syrvey on block ciphers Anna Rimoldi Department of Mathematics - University of Trento BunnyTn 2012 A. Rimoldi (Univ. Trento) Survey on block ciphers 12 March 2012 1 / 21 Symmetric Key Cryptosystem M-Source

More information

Formal Expression of BBc-1 Mechanism and Its Security Analysis

Formal Expression of BBc-1 Mechanism and Its Security Analysis Formal Expression of BBc-1 Mechanism and Its Security Analysis Jun KURIHARA and Takeshi KUBO kurihara@ieee.org t-kubo@zettant.com October 31, 2017 1 Introduction Bitcoin and its core database/ledger technology

More information

Dependable and Secure Sensor Data Storage with Dynamic Integrity Assurance

Dependable and Secure Sensor Data Storage with Dynamic Integrity Assurance Dependable and Secure Sensor Data Storage with Dynamic Integrity Assurance QIAN WANG and KUI REN, Illinois Institute of Technology SHUCHENG YU, University of Arkansas at Little Rock WENJING LOU, Worcester

More information

FAULT TOLERANT SYSTEMS

FAULT TOLERANT SYSTEMS FAULT TOLERANT SYSTEMS http://www.ecs.umass.edu/ece/koren/faulttolerantsystems Part 6 Coding I Chapter 3 Information Redundancy Part.6.1 Information Redundancy - Coding A data word with d bits is encoded

More information

Assignment 9 / Cryptography

Assignment 9 / Cryptography Assignment 9 / Cryptography Michael Hauser March 2002 Tutor: Mr. Schmidt Course: M.Sc Distributed Systems Engineering Lecturer: Mr. Owens CONTENTS Contents 1 Introduction 3 2 Simple Ciphers 3 2.1 Vignère

More information

6.857 L17. Secure Processors. Srini Devadas

6.857 L17. Secure Processors. Srini Devadas 6.857 L17 Secure Processors Srini Devadas 1 Distributed Computation Example: Distributed Computation on the Internet (SETI@home, etc.) Job Dispatcher Internet DistComp() { x = Receive(); result = Func(x);

More information

ECS High Availability Design

ECS High Availability Design ECS High Availability Design March 2018 A Dell EMC white paper Revisions Date Mar 2018 Aug 2017 July 2017 Description Version 1.2 - Updated to include ECS version 3.2 content Version 1.1 - Updated to include

More information

Chapter 10 Error Detection and Correction 10.1

Chapter 10 Error Detection and Correction 10.1 Chapter 10 Error Detection and Correction 10.1 10-1 INTRODUCTION some issues related, directly or indirectly, to error detection and correction. Topics discussed in this section: Types of Errors Redundancy

More information

CS 161 Computer Security. Week of September 11, 2017: Cryptography I

CS 161 Computer Security. Week of September 11, 2017: Cryptography I Weaver Fall 2017 CS 161 Computer Security Discussion 3 Week of September 11, 2017: Cryptography I Question 1 Activity: Cryptographic security levels (20 min) Say Alice has a randomly-chosen symmetric key

More information

CS 395T. Formal Model for Secure Key Exchange

CS 395T. Formal Model for Secure Key Exchange CS 395T Formal Model for Secure Key Exchange Main Idea: Compositionality Protocols don t run in a vacuum Security protocols are typically used as building blocks in a larger secure system For example,

More information

Cryptographic Concepts

Cryptographic Concepts Outline Identify the different types of cryptography Learn about current cryptographic methods Chapter #23: Cryptography Understand how cryptography is applied for security Given a scenario, utilize general

More information

Overview of Cryptography

Overview of Cryptography 18739A: Foundations of Security and Privacy Overview of Cryptography Anupam Datta CMU Fall 2007-08 Is Cryptography A tremendous tool The basis for many security mechanisms Is not The solution to all security

More information

(2½ hours) Total Marks: 75

(2½ hours) Total Marks: 75 (2½ hours) Total Marks: 75 N. B.: (1) All questions are compulsory. (2) Makesuitable assumptions wherever necessary and state the assumptions made. (3) Answers to the same question must be written together.

More information

Minimizing Bandwidth for Remote Access to Cryptographically Protected Audit Logs

Minimizing Bandwidth for Remote Access to Cryptographically Protected Audit Logs Minimizing Bandwidth for Remote Access to Cryptographically Protected Audit Logs John Kelsey and Bruce Schneier Counterpane Internet Security, Inc. 101 E. Minnehaha Pkwy Minneapolis, MN 55419 {kelsey,schneier}@counterpane.com

More information

CPS2323. Symmetric Ciphers: Stream Ciphers

CPS2323. Symmetric Ciphers: Stream Ciphers Symmetric Ciphers: Stream Ciphers Content Stream and Block Ciphers True Random (Stream) Generators, Perfectly Secure Ciphers and the One Time Pad Cryptographically Strong Pseudo Random Generators: Practical

More information

CSCI 454/554 Computer and Network Security. Topic 2. Introduction to Cryptography

CSCI 454/554 Computer and Network Security. Topic 2. Introduction to Cryptography CSCI 454/554 Computer and Network Security Topic 2. Introduction to Cryptography Outline Basic Crypto Concepts and Definitions Some Early (Breakable) Cryptosystems Key Issues 2 Basic Concepts and Definitions

More information

Security. Communication security. System Security

Security. Communication security. System Security Security Communication security security of data channel typical assumption: adversary has access to the physical link over which data is transmitted cryptographic separation is necessary System Security

More information

page 1 Introduction to Cryptography Benny Pinkas Lecture 3 November 18, 2008 Introduction to Cryptography, Benny Pinkas

page 1 Introduction to Cryptography Benny Pinkas Lecture 3 November 18, 2008 Introduction to Cryptography, Benny Pinkas Introduction to Cryptography Lecture 3 Benny Pinkas page 1 1 Pseudo-random generator Pseudo-random generator seed output s G G(s) (random, s =n) Deterministic function of s, publicly known G(s) = 2n Distinguisher

More information

CSC 774 Network Security

CSC 774 Network Security CSC 774 Network Security Topic 2. Review of Cryptographic Techniques CSC 774 Dr. Peng Ning 1 Outline Encryption/Decryption Digital signatures Hash functions Pseudo random functions Key exchange/agreement/distribution

More information

Computer Networks. Network Security and Ethics. Week 14. College of Information Science and Engineering Ritsumeikan University

Computer Networks. Network Security and Ethics. Week 14. College of Information Science and Engineering Ritsumeikan University Computer Networks Network Security and Ethics Week 14 College of Information Science and Engineering Ritsumeikan University Security Intro for Admins l Network administrators can break security into two

More information

Computer Security. 08. Cryptography Part II. Paul Krzyzanowski. Rutgers University. Spring 2018

Computer Security. 08. Cryptography Part II. Paul Krzyzanowski. Rutgers University. Spring 2018 Computer Security 08. Cryptography Part II Paul Krzyzanowski Rutgers University Spring 2018 March 23, 2018 CS 419 2018 Paul Krzyzanowski 1 Block ciphers Block ciphers encrypt a block of plaintext at a

More information

CSC 474/574 Information Systems Security

CSC 474/574 Information Systems Security CSC 474/574 Information Systems Security Topic 2.2 Secret Key Cryptography CSC 474/574 Dr. Peng Ning 1 Agenda Generic block cipher Feistel cipher DES Modes of block ciphers Multiple encryptions Message

More information

DISCLOSURE PROTECTION OF SENSITIVE ATTRIBUTES IN COLLABORATIVE DATA MINING V. Uma Rani *1, Dr. M. Sreenivasa Rao *2, V. Theresa Vinayasheela *3

DISCLOSURE PROTECTION OF SENSITIVE ATTRIBUTES IN COLLABORATIVE DATA MINING V. Uma Rani *1, Dr. M. Sreenivasa Rao *2, V. Theresa Vinayasheela *3 www.ijecs.in International Journal Of Engineering And Computer Science ISSN:2319-7242 Volume 3 Issue 5 May, 2014 Page No. 5594-5599 DISCLOSURE PROTECTION OF SENSITIVE ATTRIBUTES IN COLLABORATIVE DATA MINING

More information

Computer Security 3/23/18

Computer Security 3/23/18 s s encrypt a block of plaintext at a time and produce ciphertext Computer Security 08. Cryptography Part II Paul Krzyzanowski DES & AES are two popular block ciphers DES: 64 bit blocks AES: 128 bit blocks

More information

Operating Systems. Week 13 Recitation: Exam 3 Preview Review of Exam 3, Spring Paul Krzyzanowski. Rutgers University.

Operating Systems. Week 13 Recitation: Exam 3 Preview Review of Exam 3, Spring Paul Krzyzanowski. Rutgers University. Operating Systems Week 13 Recitation: Exam 3 Preview Review of Exam 3, Spring 2014 Paul Krzyzanowski Rutgers University Spring 2015 April 22, 2015 2015 Paul Krzyzanowski 1 Question 1 A weakness of using

More information

Block ciphers, stream ciphers

Block ciphers, stream ciphers Block ciphers, stream ciphers (start on:) Asymmetric cryptography CS 161: Computer Security Prof. Raluca Ada Popa Jan 31, 2018 Announcements Project 1 is out, due Feb 14 midnight Recall: Block cipher A

More information

Lecture Nov. 21 st 2006 Dan Wendlandt ISP D ISP B ISP C ISP A. Bob. Alice. Denial-of-Service. Password Cracking. Traffic.

Lecture Nov. 21 st 2006 Dan Wendlandt ISP D ISP B ISP C ISP A. Bob. Alice. Denial-of-Service. Password Cracking. Traffic. 15-441 Lecture Nov. 21 st 2006 Dan Wendlandt Worms & Viruses Phishing End-host impersonation Denial-of-Service Route Hijacks Traffic modification Spyware Trojan Horse Password Cracking IP Spoofing DNS

More information

CS61B Lecture #32. Last modified: Sun Nov 5 19:32: CS61B: Lecture #32 1

CS61B Lecture #32. Last modified: Sun Nov 5 19:32: CS61B: Lecture #32 1 CS61B Lecture #32 Today: Pseudo-random Numbers (Chapter 11) What use are random sequences? What are random sequences? Pseudo-random sequences. How to get one. Relevant Java library classes and methods.

More information

CS 416: Operating Systems Design April 22, 2015

CS 416: Operating Systems Design April 22, 2015 Question 1 A weakness of using NAND flash memory for use as a file system is: (a) Stored data wears out over time, requiring periodic refreshing. Operating Systems Week 13 Recitation: Exam 3 Preview Review

More information

Basic Concepts and Definitions. CSC/ECE 574 Computer and Network Security. Outline

Basic Concepts and Definitions. CSC/ECE 574 Computer and Network Security. Outline CSC/ECE 574 Computer and Network Security Topic 2. Introduction to Cryptography 1 Outline Basic Crypto Concepts and Definitions Some Early (Breakable) Cryptosystems Key Issues 2 Basic Concepts and Definitions

More information

More on Cryptography CS 136 Computer Security Peter Reiher January 19, 2017

More on Cryptography CS 136 Computer Security Peter Reiher January 19, 2017 More on Cryptography CS 136 Computer Security Peter Reiher January 19, 2017 Page 1 Outline Desirable characteristics of ciphers Stream and block ciphers Cryptographic modes Uses of cryptography Symmetric

More information