The Steganographic File System Ross Anderson, Roger Needlham, Adi Shamir Presented by: Pan Meng Presented by: Pan Meng.

Slides:



Advertisements
Similar presentations
Lecture 5: Cryptographic Hashes
Advertisements

Modern Symmetric-Key Ciphers
Chapter 11 Indexing and Hashing (2) Yonsei University 2 nd Semester, 2013 Sanghyun Park.
Copyright 2003Curt Hill Hash indexes Are they better or worse than a B+Tree?
©Silberschatz, Korth and Sudarshan12.1Database System Concepts Chapter 12: Indexing and Hashing Basic Concepts Ordered Indices B+-Tree Index Files B-Tree.
Biometrics based Cryptosystem Design. Cryptosystem A mechanism using which one can encode an information content to an incomprehensible form and also.
SEMINAR ON FILE SLACK AND DISK SLACK
Allocating Memory.
A F RAMEWORK FOR THE A NALYSIS OF M IX -B ASED S TEGANOGRAPHIC F ILE S YSTEMS Claudia Diaz, Carmela Troncoso, Bart Preneel K.U.Leuven / COSIC Cambridge,
Reliability of Disk Systems. Reliability So far, we looked at ways to improve the performance of disk systems. Next, we will look at ways to improve the.
Performance/Reliability of Disk Systems So far, we looked at ways to improve the performance of disk systems. Next, we will look at ways to improve the.
CSC1016 Coursework Clarification Derek Mortimer March 2010.
1 Chapter 5 Hashes and Message Digests Instructor: 孫宏民 Room: EECS 6402, Tel: , Fax :
Hash Table indexing and Secondary Storage Hashing.
Hash functions a hash function produces a fingerprint of some file/message/data h = H(M)  condenses a variable-length message M  to a fixed-sized fingerprint.
Chapter 4  Hash Functions 1 Overview  Cryptographic hash functions are functions that: o Map an arbitrary-length (but finite) input to a fixed-size output.
1 Operating Systems Chapter 7-File-System File Concept Access Methods Directory Structure Protection File-System Structure Allocation Methods Free-Space.
Intro To Encryption Exercise 1. Monoalphabetic Ciphers Examples:  Caesar Cipher  At Bash  PigPen (Will be demonstrated)  …
Building Secure Software Chapter 9 Race Conditions.
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptanalysis. The Speaker  Chuck Easttom  
Practical Techniques for Searches on Encrypted Data Yongdae Kim Written by Song, Wagner, Perrig.
Hash Functions A hash function H accepts a variable-length block of data M as input and produces a fixed-size hash value h = H(M) Principal object is.
CS212: DATA STRUCTURES Lecture 10:Hashing 1. Outline 2  Map Abstract Data type  Map Abstract Data type methods  What is hash  Hash tables  Bucket.
One-Time Pad Or Vernam Cipher Sayed Mahdi Mohammad Hasanzadeh Spring 2004.
IT253: Computer Organization
Operating Systems COMP 4850/CISG 5550 File Systems Files Dr. James Money.
Theory of Computation II Topic presented by: Alberto Aguilar Gonzalez.
1 CSE 326: Data Structures: Hash Tables Lecture 12: Monday, Feb 3, 2003.
Hashing Sections 10.2 – 10.3 CS 302 Dr. George Bebis.
Indexing and hashing Azita Keshmiri CS 157B. Basic concept An index for a file in a database system works the same way as the index in text book. For.
Software Security Seminar - 1 Chapter 10. Using Algorithms 조미성 Applied Cryptography.
1 Hashing - Introduction Dictionary = a dynamic set that supports the operations INSERT, DELETE, SEARCH Dictionary = a dynamic set that supports the operations.
Chapter 10 Hashing. The search time of each algorithm depend on the number n of elements of the collection S of the data. A searching technique called.
1 How will execution time grow with SIZE? int array[SIZE]; int sum = 0; for (int i = 0 ; i < ; ++ i) { for (int j = 0 ; j < SIZE ; ++ j) { sum +=
ADVANTAGE of GENERATOR MATRIX:
WEP – Wireless Encryption Protocol A. Gabriel W. Daleson CS 610 – Advanced Security Portland State University.
CE Operating Systems Lecture 17 File systems – interface and implementation.
Information Integrity and Message Digests CSCI 5857: Encoding and Encryption.
1 Wireless Threats 1 – Cracking WEP Cracking WEP in Chapter 5 of Wireless Maximum Security by Peikari, C. and Fogie, S.
Hashtables. An Abstract data type that supports the following operations: –Insert –Find –Remove Search trees can be used for the same operations but require.
Error Detection and Correction – Hamming Code
CPSC 252 Hashing Page 1 Hashing We have already seen that we can search for a key item in an array using either linear or binary search. It would be better.
CS519, © A.SelcukDifferential & Linear Cryptanalysis1 CS 519 Cryptography and Network Security Instructor: Ali Aydin Selcuk.
Memory Management OS Fazal Rehman Shamil. swapping Swapping concept comes in terms of process scheduling. Swapping is basically implemented by Medium.
SOCSAMS e-learning Dept. of Computer Applications, MES College Marampally FILE SYSTEM.
CSCI 6962: Server-side Design and Programming Shopping Carts and Databases.
Wired Equivalent Privacy (WEP) Chris Overcash. Contents What is WEP? What is WEP? How is it implemented? How is it implemented? Why is it insecure? Why.
Keyword search on encrypted data. Keyword search problem  Linux utility: grep  Information retrieval Basic operation Advanced operations – relevance.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Reliability of Disk Systems. Reliability So far, we looked at ways to improve the performance of disk systems. Next, we will look at ways to improve the.
Visual Cryptography Given By: Moni Naor Adi Shamir Presented By: Anil Vishnoi (2005H103017)
Multi-Party Computation r n parties: P 1,…,P n  P i has input s i  Parties want to compute f(s 1,…,s n ) together  P i doesn’t want any information.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
CS Introduction to Operating Systems
Module 11: File Structure
Azita Keshmiri CS 157B Ch 12 indexing and hashing
Cryptographic Hash Function
How will execution time grow with SIZE?
Error Correcting Code.
Chapter 11: File System Implementation
Digital Signature Schemes and the Random Oracle Model
Chapter 11: File System Implementation
Indexing and Hashing Basic Concepts Ordered Indices
2018, Spring Pusan National University Ki-Joune Li
Hashing Sections 10.2 – 10.3 Lecture 26 CS302 Data Structures
Block Ciphers (Crypto 2)
Indexing 4/11/2019.
Chapter 11: File System Implementation
Presentation transcript:

The Steganographic File System Ross Anderson, Roger Needlham, Adi Shamir Presented by: Pan Meng Presented by: Pan Meng

Outline Introduction First construction Second construction conclusion

Usually, how do we protect our files? encryption

But the attacker knows there is a file, if he forces you to disclose your password, can you say no?

Plausible deniability Let the attacker even doesn’t know the existence of the file!

Basic idea  password

Construction 1 Simple one file scheme System is divided into n equal size files—cover Every cover is initially random data file. C1,…Ci,…Cn When we want to insert a file F, we replace it with a cover Ci. When we want to get F, we extract it from the n covers with our password.

How to select the Ci? Suppose password is: P1 P3 P7 Select C1, C3, C7 to XOR with F F’ = C1  C3  C7  F Replace one of C1, C3,C7 with F’ and XOR itself. C3’ = F’  C3 C1,C2,C3’,C4,C5,C6,C7

How to get file back? C1,C2,F’,C4,C5,C6,C7 Same password: P1 P3 P7 Now select C1, C3’,C7 C1  C3’  C7=C1  (F’  C3)  C7 =C1  (C1  C7  F)  C7 =F

More complicated case If there are more than one file in the system, after inserting a new file , the old file’s context is changed. So we must modify the context to make sure we can extract the old file properly.

Example Cover: File inserted: Password: 1110, 0111 Insert F1: Insert F2: Now we can’t get F1 from :

So we need a linear equations to decide which combinations of the Cj to alter An important property of this sysetm is that we have a linear access hierarchy-that is, a user storing a file at a given security level knows the passwords of all the files stored at lower levels- then files can be added in a natural way without disturbing already hidden files. Solution

Multiple files Assume there are n covers in the system Every cover is m bits. --whole system --n passwords ( is orthonormal)

Extract file Fi Fi = Ki  C

Modify file Fi Suppose we want to modify Fi by XORing it with the Binary Difference file D of length m We modify the whole context like: C  C   D [1]

extract file after [1] Only when i==j, file j is extracted.

Insert file 1. Extract random file Ci 2. Calculate D = F – Ci 3. Modify context: C  C   D

Key management How a user can be given only his part of the key matrix K without revealing other parts or asking him to remember lots of bits? 2. Then map each pi into a random binary vector with an odd number of 1’s-odd parity 3. Finally we use Gram-schmidt method to orthonormalise all the vectors. 1. Map a random initial password p0 by iterating a one way fuction h via :

To extend this ‘multiple secure ’ file system to provide the plausible deniability which we seek, the user must have a number of passwords pi rather than just one or two of them, and user can manage them in any of the standard ways, such as: A number of pi could be stored on the disc, encrypted under some passphrase Key management

Limitation known –message attack If the size of the password is k and the opponent knows more than k bits of plaintext, then after obtaining all the random files from the computer he can write k linear equations in the k unknown bits of the key.

Limitation performance penalty Every time we must modify the whole context, so the cost is big. Improvement: Reading or writing a file would involve reading or writing the whole ‘slices’ of the k*n matrix C, even we just want to modify a bit of this file. For example, if D is nonzero in a single bit(say, the q-th), then the product : Is nonzero.

Construction 2 Fill the whole hard disk with random bits, and then write each file block at an absolute disk address given by some pseudorandom process, and so-on the assumption that we have a block cipher which the opponent cannot distinguish from a random permutation- the presence or absence of a block at any location should not be distinguishable.

Problem: collision If we have N blocks, we will start to get collisions once we had written a little more than blocks (birthday problem).

solution Write the block at more than one location. But no analytic solutions are known for deciding how many copies be used can make the overwritten probability the lowest. Larson Table Experiments by Larson and Kajla showed that with values of m(copy number) in the range 10-25, the disks would not be full until 80-90% of its blocks were occupied.

Larson Table Larson’s system was designed to allow any record in a database to be retrieved with only one disk access. The basic idea is that’s a record is written at one of m locations on disc, which are specified pseudorandomly, and a table is kept in memory telling the user at which location to look.

StegFS based on Larson System btabi-1 …… btabi-2 …… btabi-m H(pwd) Write a block i Normal FS block Hidden block Block table random Normal bitmap

Block table entry Block number and checksum of the block. To check whether this block has been overwritten. Bitmap Just normal blocks are set. Whether a blocks is used CheckBitmap && CheckBlockTable(AllLowerLevel) Copy compliment Chance of overwritten also exists, so every time read a block, check the copy number, if less than threshold, add some.

Plausible Deniability The privacy protection of this is not provided by giving no indication of whether any hidden files are present or not. It is only impossible to find out how many different security levels of files are actually used. And also low level account can overwrite high level blocks without knowing whether that block is used.

Limitation Collision also exists. The plausible deniability is not the originals meaning of steganographic file system.

Conclusion The Steganographic file system is designed to give users a high degree of protection against coercion, in that they can plausibly deny the existence of whole directories of files on their hard disk, even against an opponent with complete access to the system and the resources.

Thanks