Merkle Hash Trees for Distributed Audit Logs
|
|
|
- Jean Ward
- 10 years ago
- Views:
Transcription
1 Merkle Hash Trees for Distributed Audit Logs Subject proposed by Karthikeyan Bhargavan April 7, 2015 Modern distributed systems spread their databases across a large number of partially untrusted hosts, to improve their availability to users located across the Internet. In many of these scenarios, the users accessing the data do not fully trust the hosts from which they download data, but they still desire strong integrity guarantees, that is, they want to be able to detect tampering. In this project, we are concerned with a particular kind of distributed database called an audit log. Audit logs are used to log security events in a distributed system, such as the granting of access to a sensitive resource. For example, when a hacker breaks into an enterprise network, his activities will be logged on machines across the network. To escape detection, the hacker may try to erase or tamper with the log, and hence the integrity of this log is security-critical. More generally, audit logs are used to maintain a shared history of events between distributed parties, where this history can only be appended to, but not modified. Popular examples of this pattern include the Bitcoin block chain 1 and the Certificate Transparency (CT) global certificate log. 2 How can a user verify the integrity of a part of a log that it has retrieved from an untrusted server? One solution is for some trusted servers to publish a cryptographically strong hash of the full log. So a user can download the log from different servers and then verify that its hash matches the expected value (retrieved from a trusted server). If the hash function is collision resistant, no malicious host can tamper with any part of the log without it being detected. Audit logs can get very large, and waiting to download the full log to verify the integrity of the few events a user may be interested in would consume a lot of redundant time and bandwidth. Hence, distributed auditing systems use an efficient data structure called Merkle trees to compute the hash of a log with n events such that the contents of an individual event can be verified in O(log n) time. The Merkle hash tree for a log with 8 events {e 1,..e 8 } is depicted below. In general, this construction works similarly for any database with n records:
2 h 1..8 = hash(h 1..4 h 5..8) h 5..8 = hash(h 5..6 h 7..8) h 5..6 = hash(h 5 h 6) h 7..8 = hash(h 7 h 8) h 1 = hash(e 1) h 2 = hash(e 2) h 5 = hash(e 5) h 6 = hash(e 6) h 7 = hash(e 7) h 8 = hash(e 8) The leaves are the hashes of each individual event e 1,..., e 8. These hashes are incrementally combined with the hashes of their neighbors as we travel up the tree. The root hash h 1..8 is effectively a hash of the whole database, computed using the hashes of the left and right subtrees. Audit Paths If it is used only to compute a hash of the full log, the Merkle tree is not particularly efficient, since it requires roughly 2n hashes to be computed, whereas computing a sequential hash over the database only requires n hashes (or more accurately, compressions) to be applied. The true advantage of the Merkle tree is when we want to prove that the i-th record has not been tampered with. Suppose a user has obtained the root hash h 1..8 from a trusted server and then retrieved e 4 from an untrusted host. To verify the integrity of e 4, the user needs the untrusted host to also send it the hashes [h 3, h 1..2, h 5..8 ], so that it can reconstruct the path leading from e 4 to the root hash, as depicted below: h 1..8 = hash(h 1..4 h 5..8) h 5..8 = hash(h 5..6 h 7..8) Hence, verifying that any given record r is in fact the 4th event in the log only requires transmitting and computing 3 hashes, not the full tree. Verifying any event in a log of n events only takes log n hashes. (Can you prove it?) This sequence of hashes is called an audit path Consistency Proofs Logs grow over time as new events occur. However, they are append-only, that is, events may not be modified, deleted, or inserted in the middle. Once an event has occured, its presence in the log must be preserved. Suppose a user already has the root hash of the log after n events, and now the log has been extended to m > n events. How can we prove to the user that the new log has only appended events to the old log, without the user needing to check the full Merkle trees? Consider the Merkle tree below corresponding to an earlier version of the log with n = 6 events. 2
3 h 1..6 = hash(h 1..4 h 5..6) h 5..6 = hash(h 5 h 6) h 5 = hash(e 5) h 6 = hash(e 6) h 1 = hash(e 1) h 2 = hash(e 2) To prove that the root hash h 1..8 for the log with m = 8 elements strictly extends the log with n = 6 elements, it is enough to provide the user with the three hashes (h 1..4, h 5..6, h 7..8 ). Using these hashes, the user can reconstruct both root hashes h 1..6 and h 1..8 and be assured that the second corresponds to a tree that extends the first. This sequence of hashes is called a consistency proof. Programming Tasks Our goal is to program an audit log server and an auditor who can check the log on behalf of the user. We treat logs as simple text files where each line corresponds to one event. The tasks below are written with Java in mind, but the project could just as easily be coded in OCaml. The concrete design presented below is taken from Certificate Transparency - RFC Merkle Hash Tree Define a Java class that represents Merkle Trees. Each tree object represents one node in the tree. It has fields containing the hash of the current tree, pointers to the left and right subtrees, and two fields denoting the beginning and ending index of the range of the log they cover (e.g. h 5..8 covers records 5 to 8). The constructor for a leaf takes a string containing a single event of the log, converts it to bytes, prepends it by the single byte 0x00 and computes its hash. h i = SHA 256(0 x00 u t f 8 (e i ) ) The constructor for an internal node takes two Merkle trees for the left and right subtrees. It concatenates the hashes of its two subtrees, prepends them with 0x01, and hashes the result. h 1..8 = SHA 256(0 x01 h 1..4 h 5..8 ) The use of different byte-tags in the two hashes offers protection against some kinds of hash collisions. We can use the function SHA256 from java. security.messagedigest to compute each individual hash; for example, for a byte array ( leaf ) the hash can be computed as: MessageDigest d i g e s t = MessageDigest. g e t I n s t a n c e ( SHA 256 ) ; byte [ ] hash = d i g e s t. d i g e s t ( l e a f ) ; 3 3
4 To convert a string (text) to a byte array, we can use text.getbytes( UTF 8 ). Write a function that takes an input text file and computes its Merkle tree (treating each line as a new event). Test your code on large (>1GB) text files. Log Server Implement a Log Server class that uses a Merkle tree to implement an event log. Define a constructor that reads a full log from a text file to construct the tree. Define a method that returns the current root hash. Define methods to append events to the log one at a time, or as a batch of events appended at once. Compare and discuss the complexity of these operations. Implement a method genpath that given the current Merkle tree of size n and any index i <= n returns the audit path for the i-th event, that is, the hashes needed to verify e i. For example, in the Merkle tree for 1..8 above, genpath(4) for e 4 would return the array of hashes [h 3, h 1..2, h 5..8 ]. Implement a method genproof that given the current Merkle tree of size n and any previous tree size m <= n returns the consistency proof that the current tree extends the previous tree. For example, in the Merkle tree for 1..8 above, genpoof(6) would return the array of hashes [h 7..8, h 5..6, h 1..4 ]. Auditor Implement an Auditor class that calls the Log Server and verifies its behavior on various inputs. Define a constructor that takes an instance of the Log Server as input and retrieves the current size and root hash for the log. Implement a method ismember that takes an event (as text) and verifies that it exists in the current log by calling genpath to obtain an audit path and verifying the hashes on the audit path: the path should begin with a hash of the event and end with the root hash, and all hashes on the path should be correctly computed. Note that this method does not use any knowledge of the full Merkle tree beyond its size and root hash. Test your code by verifying membership for various events. Implement a method isconsistent that retrieves a new size and root hash from the Log Server and verifies that the new log is consistent with the previous one. If the log has changed, the method calls genproof to get a consistency proof and verifies it using only the previous root hash and size and the current root hash and size. Evaluation The project will be evaluated on the basis of the clean design and implementation, the careful analysis of the complexity of various methods, and on the quality of tests that have been used to verify the solution. Both the report and the presentation should answer questions about the design choices made by the student. For example: What is the complexity of appending events, audit path generation and verification? How much memory or time does it take to verify k records? Can you experimentally confirm the time taken for various operations? Does this depend on the type of file, on the size of each event? At what size of the database does it become more efficient to use Merkle trees as opposed to a flat list of hashes? 4
5 For extra credit, can you deploy your Auditor and Log Server as independent processes communicating over the network? Can you use your Auditor to check that some public CT log is consistent? You can get the latest root hash in JSON format for the Log Server ct.googleapis.com/aviator from googleapis.com/aviator/ct/v1/get-sth. You can get the consistency proof betwen the hash trees of size m and n by accessing com/aviator/ct/v1/get-sth-consistency?first=m&second=n. For other CT Log Servers, see org/known-logs. For other CT JSON APIs, see html/rfc6962#section-4. 5
Physical Data Organization
Physical Data Organization Database design using logical model of the database - appropriate level for users to focus on - user independence from implementation details Performance - other major factor
Energy Efficiency in Secure and Dynamic Cloud Storage
Energy Efficiency in Secure and Dynamic Cloud Storage Adilet Kachkeev Ertem Esiner Alptekin Küpçü Öznur Özkasap Koç University Department of Computer Science and Engineering, İstanbul, Turkey {akachkeev,eesiner,akupcu,oozkasap}@ku.edu.tr
Using the Bitcoin Blockchain for secure, independently verifiable, electronic votes. Pierre Noizat - July 2014
Using the Bitcoin Blockchain for secure, independently verifiable, electronic votes. Pierre Noizat - July 2014 The problem with proprietary voting systems Existing electronic voting systems all suffer
B+ Tree Properties B+ Tree Searching B+ Tree Insertion B+ Tree Deletion Static Hashing Extendable Hashing Questions in pass papers
B+ Tree and Hashing B+ Tree Properties B+ Tree Searching B+ Tree Insertion B+ Tree Deletion Static Hashing Extendable Hashing Questions in pass papers B+ Tree Properties Balanced Tree Same height for paths
Security of Cloud Storage: - Deduplication vs. Privacy
Security of Cloud Storage: - Deduplication vs. Privacy Benny Pinkas - Bar Ilan University Shai Halevi, Danny Harnik, Alexandra Shulman-Peleg - IBM Research Haifa 1 Remote storage and security Easy to encrypt
SECURITY ENHANCEMENT OF GROUP SHARING AND PUBLIC AUDITING FOR DATA STORAGE IN CLOUD
SECURITY ENHANCEMENT OF GROUP SHARING AND PUBLIC AUDITING FOR DATA STORAGE IN CLOUD S.REVATHI B.HASEENA M.NOORUL IZZATH PG Student PG Student PG Student II- ME CSE II- ME CSE II- ME CSE Al-Ameen Engineering
- Easy to insert & delete in O(1) time - Don t need to estimate total memory needed. - Hard to search in less than O(n) time
Skip Lists CMSC 420 Linked Lists Benefits & Drawbacks Benefits: - Easy to insert & delete in O(1) time - Don t need to estimate total memory needed Drawbacks: - Hard to search in less than O(n) time (binary
File Management. Chapter 12
Chapter 12 File Management File is the basic element of most of the applications, since the input to an application, as well as its output, is usually a file. They also typically outlive the execution
International Journal of Advanced Research in Computer Science and Software Engineering
Volume 3, Issue 2, February 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com A Review on
Full and Complete Binary Trees
Full and Complete Binary Trees Binary Tree Theorems 1 Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full
Binary Search Trees 3/20/14
Binary Search Trees 3/0/4 Presentation for use ith the textbook Data Structures and Algorithms in Java, th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldasser, Wiley, 04 Binary Search Trees 4
Chapter 13. Chapter Outline. Disk Storage, Basic File Structures, and Hashing
Chapter 13 Disk Storage, Basic File Structures, and Hashing Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files
Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 13-1
Slide 13-1 Chapter 13 Disk Storage, Basic File Structures, and Hashing Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files Hashed Files Dynamic and Extendible
Chapter 8: Structures for Files. Truong Quynh Chi [email protected]. Spring- 2013
Chapter 8: Data Storage, Indexing Structures for Files Truong Quynh Chi [email protected] Spring- 2013 Overview of Database Design Process 2 Outline Data Storage Disk Storage Devices Files of Records
Binary Search Trees. Data in each node. Larger than the data in its left child Smaller than the data in its right child
Binary Search Trees Data in each node Larger than the data in its left child Smaller than the data in its right child FIGURE 11-6 Arbitrary binary tree FIGURE 11-7 Binary search tree Data Structures Using
P2P Storage Systems. Prof. Chun-Hsin Wu Dept. Computer Science & Info. Eng. National University of Kaohsiung
P2P Storage Systems Prof. Chun-Hsin Wu Dept. Computer Science & Info. Eng. National University of Kaohsiung Outline Introduction Distributed file systems P2P file-swapping systems P2P storage systems Strengths
Chapter 13 Disk Storage, Basic File Structures, and Hashing.
Chapter 13 Disk Storage, Basic File Structures, and Hashing. Copyright 2004 Pearson Education, Inc. Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files
Merkle Hash Tree based Techniques for Data Integrity of Outsourced Data
Merkle Hash Tree based Techniques for Data Integrity of Outsourced Data ABSTRACT Muhammad Saqib Niaz Dept. of Computer Science Otto von Guericke University Magdeburg, Germany [email protected]
Chapter 13. Disk Storage, Basic File Structures, and Hashing
Chapter 13 Disk Storage, Basic File Structures, and Hashing Chapter Outline Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files Hashed Files Dynamic and Extendible Hashing
Secure cloud access system using JAR ABSTRACT:
Secure cloud access system using JAR ABSTRACT: Cloud computing enables highly scalable services to be easily consumed over the Internet on an as-needed basis. A major feature of the cloud services is that
Data storage Tree indexes
Data storage Tree indexes Rasmus Pagh February 7 lecture 1 Access paths For many database queries and updates, only a small fraction of the data needs to be accessed. Extreme examples are looking or updating
The Advantages and Disadvantages of Network Computing Nodes
Big Data & Scripting storage networks and distributed file systems 1, 2, in the remainder we use networks of computing nodes to enable computations on even larger datasets for a computation, each node
How To Ensure Correctness Of Data In The Cloud
A MECHANICS FOR ASSURING DATA STORAGE SECURITY IN CLOUD COMPUTING 1, 2 Pratibha Gangwar, 3 Mamta Gadoria 1 M. Tech. Scholar, Jayoti Vidyapeeth Women s University, Jaipur, [email protected] 2 M. Tech.
Electronic Contract Signing without Using Trusted Third Party
Electronic Contract Signing without Using Trusted Third Party Zhiguo Wan 1, Robert H. Deng 2 and David Lee 1 Sim Kim Boon Institute for Financial Economics 1, School of Information Science 2, Singapore
MANAGED FILE TRANSFER: 10 STEPS TO SOX COMPLIANCE
WHITE PAPER MANAGED FILE TRANSFER: 10 STEPS TO SOX COMPLIANCE 1. OVERVIEW Do you want to design a file transfer process that is secure? Or one that is compliant? Of course, the answer is both. But it s
Digital Evidence Search Kit
Digital Evidence Search Kit K.P. Chow, C.F. Chong, K.Y. Lai, L.C.K. Hui, K. H. Pun, W.W. Tsang, H.W. Chan Center for Information Security and Cryptography Department of Computer Science The University
Database Design Patterns. Winter 2006-2007 Lecture 24
Database Design Patterns Winter 2006-2007 Lecture 24 Trees and Hierarchies Many schemas need to represent trees or hierarchies of some sort Common way of representing trees: An adjacency list model Each
Preserving Data Privacy in Third Party Cloud Audit
Preserving Data Privacy in Third Party Cloud Audit 867 1 L. Gayathri, 2 R. Ranjitha, 3 S. Thiruchadai Pandeeswari, 4 P.T. Kanmani 1,2,3,4 Department of Information Technology Thiagarajar College of Engineering,
Hash-based Digital Signature Schemes
Hash-based Digital Signature Schemes Johannes Buchmann Erik Dahmen Michael Szydlo October 29, 2008 Contents 1 Introduction 2 2 Hash based one-time signature schemes 3 2.1 Lamport Diffie one-time signature
Towards a compliance audit of SLAs for data replication in Cloud storage
Towards a compliance audit of SLAs for data replication in Cloud storage J. Leneutre B. Djebaili, C. Kiennert, J. Leneutre, L. Chen, Data Integrity and Availability Verification Game in Untrusted Cloud
Identifying Data Integrity in the Cloud Storage
www.ijcsi.org 403 Identifying Data Integrity in the Cloud Storage Saranya Eswaran 1 and Dr.Sunitha Abburu 2 1 Adhiyamaan College of Engineering, Department of Computer Application, Hosur. 2 Professor and
Lecture 6: Binary Search Trees CSCI 700 - Algorithms I. Andrew Rosenberg
Lecture 6: Binary Search Trees CSCI 700 - Algorithms I Andrew Rosenberg Last Time Linear Time Sorting Counting Sort Radix Sort Bucket Sort Today Binary Search Trees Data Structures Data structure is a
Hushmail Express Password Encryption in Hushmail. Brian Smith Hush Communications
Hushmail Express Password Encryption in Hushmail Brian Smith Hush Communications Introduction...2 Goals...2 Summary...2 Detailed Description...4 Message Composition...4 Message Delivery...4 Message Retrieval...5
Chapter 13 File and Database Systems
Chapter 13 File and Database Systems Outline 13.1 Introduction 13.2 Data Hierarchy 13.3 Files 13.4 File Systems 13.4.1 Directories 13.4. Metadata 13.4. Mounting 13.5 File Organization 13.6 File Allocation
Chapter 13 File and Database Systems
Chapter 13 File and Database Systems Outline 13.1 Introduction 13.2 Data Hierarchy 13.3 Files 13.4 File Systems 13.4.1 Directories 13.4. Metadata 13.4. Mounting 13.5 File Organization 13.6 File Allocation
HTTPS Configuration for SAP Connector
HTTPS Configuration for SAP Connector 1993-2015 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without
Analysis of Algorithms I: Binary Search Trees
Analysis of Algorithms I: Binary Search Trees Xi Chen Columbia University Hash table: A data structure that maintains a subset of keys from a universe set U = {0, 1,..., p 1} and supports all three dictionary
DATABASE DESIGN - 1DL400
DATABASE DESIGN - 1DL400 Spring 2015 A course on modern database systems!! http://www.it.uu.se/research/group/udbl/kurser/dbii_vt15/ Kjell Orsborn! Uppsala Database Laboratory! Department of Information
DarkFS - An Encrypted File System
1 DarkFS - An Encrypted File System Team: Arjun Narayanan, Yuta 1. Motivation In many software applications, we want to store files in a remote, untrusted file server. With an untrusted file server, we
Chapter Objectives. Chapter 9. Sequential Search. Search Algorithms. Search Algorithms. Binary Search
Chapter Objectives Chapter 9 Search Algorithms Data Structures Using C++ 1 Learn the various search algorithms Explore how to implement the sequential and binary search algorithms Discover how the sequential
A binary search tree or BST is a binary tree that is either empty or in which the data element of each node has a key, and:
Binary Search Trees 1 The general binary tree shown in the previous chapter is not terribly useful in practice. The chief use of binary trees is for providing rapid access to data (indexing, if you will)
Converting a Number from Decimal to Binary
Converting a Number from Decimal to Binary Convert nonnegative integer in decimal format (base 10) into equivalent binary number (base 2) Rightmost bit of x Remainder of x after division by two Recursive
Algorithms and Data Structures
Algorithms and Data Structures CMPSC 465 LECTURES 20-21 Priority Queues and Binary Heaps Adam Smith S. Raskhodnikova and A. Smith. Based on slides by C. Leiserson and E. Demaine. 1 Trees Rooted Tree: collection
BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note
BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise
EMC Documentum Repository Services for Microsoft SharePoint
EMC Documentum Repository Services for Microsoft SharePoint Version 6.5 SP2 Installation Guide P/N 300 009 829 A01 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748 9103 1 508 435 1000 www.emc.com
Databases and Information Systems 1 Part 3: Storage Structures and Indices
bases and Information Systems 1 Part 3: Storage Structures and Indices Prof. Dr. Stefan Böttcher Fakultät EIM, Institut für Informatik Universität Paderborn WS 2009 / 2010 Contents: - database buffer -
root node level: internal node edge leaf node CS@VT Data Structures & Algorithms 2000-2009 McQuain
inary Trees 1 A binary tree is either empty, or it consists of a node called the root together with two binary trees called the left subtree and the right subtree of the root, which are disjoint from each
File Management. Chapter 12
File Management Chapter 12 File Management File management system is considered part of the operating system Input to applications is by means of a file Output is saved in a file for long-term storage
Binary Coded Web Access Pattern Tree in Education Domain
Binary Coded Web Access Pattern Tree in Education Domain C. Gomathi P.G. Department of Computer Science Kongu Arts and Science College Erode-638-107, Tamil Nadu, India E-mail: [email protected] M. Moorthi
Configuring Security Features of Session Recording
Configuring Security Features of Session Recording Summary This article provides information about the security features of Citrix Session Recording and outlines the process of configuring Session Recording
Original-page small file oriented EXT3 file storage system
Original-page small file oriented EXT3 file storage system Zhang Weizhe, Hui He, Zhang Qizhen School of Computer Science and Technology, Harbin Institute of Technology, Harbin E-mail: [email protected]
Enhanced certificate transparency and end-to-end encrypted mail
Enhanced certificate transparency and end-to-end encrypted mail Mark D. Ryan University of Birmingham, UK CloudTomo Ltd. Abstract The certificate authority model for authenticating public keys of websites
Simple Solution for a Location Service. Naming vs. Locating Entities. Forwarding Pointers (2) Forwarding Pointers (1)
Naming vs. Locating Entities Till now: resources with fixed locations (hierarchical, caching,...) Problem: some entity may change its location frequently Simple solution: record aliases for the new address
Key Components of WAN Optimization Controller Functionality
Key Components of WAN Optimization Controller Functionality Introduction and Goals One of the key challenges facing IT organizations relative to application and service delivery is ensuring that the applications
CSE 326, Data Structures. Sample Final Exam. Problem Max Points Score 1 14 (2x7) 2 18 (3x6) 3 4 4 7 5 9 6 16 7 8 8 4 9 8 10 4 Total 92.
Name: Email ID: CSE 326, Data Structures Section: Sample Final Exam Instructions: The exam is closed book, closed notes. Unless otherwise stated, N denotes the number of elements in the data structure
Implementing a Tamper-evident Database System
Implementing a Tamper-evident Database System Gerome Miklau 1 and Dan Suciu 2 1 University of Massachusetts, Amherst [email protected] 2 University of Washington [email protected] Abstract. Data
Client Side Binding of Dynamic Drop Downs
International Journal of Scientific and Research Publications, Volume 5, Issue 9, September 2015 1 Client Side Binding of Dynamic Drop Downs Tanuj Joshi R&D Department, Syscom Corporation Limited Abstract-
How To Ensure Correctness Of Data In The Cloud
Ensuring Data Storage Security in Cloud Computing ABSTRACT Cloud computing has been envisioned as the next-generation architecture of IT enterprise. In contrast to traditional solutions, where the IT services
15-2394-3696 RIGOROUS PUBLIC AUDITING SUPPORT ON SHARED DATA STORED IN THE CLOUD BY PRIVACY-PRESERVING MECHANISM
RIGOROUS PUBLIC AUDITING SUPPORT ON SHARED DATA STORED IN THE CLOUD BY PRIVACY-PRESERVING MECHANISM Dhanashri Bamane Vinayak Pottigar Subhash Pingale Department of Computer Science and Engineering SKN
Symbol Tables. Introduction
Symbol Tables Introduction A compiler needs to collect and use information about the names appearing in the source program. This information is entered into a data structure called a symbol table. The
Data Integrity Check using Hash Functions in Cloud environment
Data Integrity Check using Hash Functions in Cloud environment Selman Haxhijaha 1, Gazmend Bajrami 1, Fisnik Prekazi 1 1 Faculty of Computer Science and Engineering, University for Business and Tecnology
Making Bitcoin Exchanges Transparent
Making Bitcoin Exchanges Transparent Christian Decker, James Guthrie, Jochen Seidel, and Roger Wattenhofer Distributed Computing Group, ETH Zurich, Switzerland {cdecker,guthriej,seidelj,wattenhofer}@ethz.ch
Secure Authentication and Session. State Management for Web Services
Lehman 0 Secure Authentication and Session State Management for Web Services Clay Lehman CSC 499: Honors Thesis Supervised by: Dr. R. Michael Young Lehman 1 1. Introduction Web services are a relatively
Design and Analysis of Methods for Signing Electronic Documents Using Mobile Phones
Design and Analysis of Methods for Signing Electronic Documents Using Mobile Phones Pramote Kuacharoen School of Applied Statistics National Institute of Development Administration 118 Serithai Rd. Bangkapi,
Fixity Checks: Checksums, Message Digests and Digital Signatures Audrey Novak, ILTS Digital Preservation Committee November 2006
Fixity Checks: Checksums, Message Digests and Digital Signatures Audrey Novak, ILTS Digital Preservation Committee November 2006 Introduction: Fixity, in preservation terms, means that the digital object
Sorting Hierarchical Data in External Memory for Archiving
Sorting Hierarchical Data in External Memory for Archiving Ioannis Koltsidas School of Informatics University of Edinburgh [email protected] Heiko Müller School of Informatics University of Edinburgh
Verifiable Delegation of Computation over Large Datasets
Verifiable Delegation of Computation over Large Datasets Siavosh Benabbas University of Toronto Rosario Gennaro IBM Research Yevgeniy Vahlis AT&T Cloud Computing Data D Code F Y F(D) Cloud could be malicious
Energy Optimal Cloud Storage and Access Methods for Temporal Cloud Databases
Energy Optimal Cloud Storage and Access Methods for Temporal Cloud Databases MUTHURAJKUMAR SANNASY*, VIJAYALAKSHMI MUTHUSWAMY, KANNAN ARPUTHARAJ Department of Information Science and Technology College
SQL Injection January 23, 2013
Web-based Attack: SQL Injection SQL Injection January 23, 2013 Authored By: Stephanie Reetz, SOC Analyst Contents Introduction Introduction...1 Web applications are everywhere on the Internet. Almost Overview...2
Entrust Certificate Services. Java Code Signing. User Guide. Date of Issue: December 2014. Document issue: 2.0
Entrust Certificate Services Java Code Signing User Guide Date of Issue: December 2014 Document issue: 2.0 Copyright 2009-2014 Entrust. All rights reserved. Entrust is a trademark or a registered trademark
Data Storage Security in Cloud Computing for Ensuring Effective and Flexible Distributed System
Data Storage Security in Cloud Computing for Ensuring Effective and Flexible Distributed System 1 K.Valli Madhavi A.P [email protected] Mobile: 9866034900 2 R.Tamilkodi A.P [email protected] Mobile:
Persistent Binary Search Trees
Persistent Binary Search Trees Datastructures, UvA. May 30, 2008 0440949, Andreas van Cranenburgh Abstract A persistent binary tree allows access to all previous versions of the tree. This paper presents
BIRT Application and BIRT Report Deployment Functional Specification
Functional Specification Version 1: October 6, 2005 Abstract This document describes how the user will deploy a BIRT Application and BIRT reports to the Application Server. Document Revisions Version Date
Naming vs. Locating Entities
Naming vs. Locating Entities Till now: resources with fixed locations (hierarchical, caching,...) Problem: some entity may change its location frequently Simple solution: record aliases for the new address
File System Management
Lecture 7: Storage Management File System Management Contents Non volatile memory Tape, HDD, SSD Files & File System Interface Directories & their Organization File System Implementation Disk Space Allocation
CyberSource Payment Security. with PCI DSS Tokenization Guidelines
CyberSource Payment Security Compliance The PCI Security Standards Council has published guidelines on tokenization, providing all merchants who store, process, or transmit cardholder data with guidance
Using NXLog with Elasticsearch and Kibana. Using NXLog with Elasticsearch and Kibana
Using NXLog with Elasticsearch and Kibana i Using NXLog with Elasticsearch and Kibana Using NXLog with Elasticsearch and Kibana ii Contents 1 Setting up Elasticsearch and Kibana 1 1.1 Installing Elasticsearch................................................
Windows 7 Security Event Log Format
Windows 7 ecurity vent Log Format Todd Heberlein 23 ep 2010 Windows security event log provides a rich source of information to detect and analyze a wide range of threats against computer systems. Unfortunately
Binary Search Trees. A Generic Tree. Binary Trees. Nodes in a binary search tree ( B-S-T) are of the form. P parent. Key. Satellite data L R
Binary Search Trees A Generic Tree Nodes in a binary search tree ( B-S-T) are of the form P parent Key A Satellite data L R B C D E F G H I J The B-S-T has a root node which is the only node whose parent
PowerChute TM Network Shutdown Security Features & Deployment
PowerChute TM Network Shutdown Security Features & Deployment By David Grehan, Sarah Jane Hannon ABSTRACT PowerChute TM Network Shutdown (PowerChute) software works in conjunction with the UPS Network
.INFO Agreement Appendix 1 Data Escrow Specification (22 August 2013)
.INFO Agreement Appendix 1 Data Escrow Specification (22 August 2013) Registry Operator and ICANN agree to engage in good faith negotiations to replace this Appendix with a Data Escrow Specification equivalent
Big Data and Scripting. Part 4: Memory Hierarchies
1, Big Data and Scripting Part 4: Memory Hierarchies 2, Model and Definitions memory size: M machine words total storage (on disk) of N elements (N is very large) disk size unlimited (for our considerations)
Recovery System C H A P T E R16. Practice Exercises
C H A P T E R16 Recovery System Practice Exercises 16.1 Explain why log records for transactions on the undo-list must be processed in reverse order, whereas redo is performed in a forward direction. Answer:
AsicBoost A Speedup for Bitcoin Mining
AsicBoost A Speedup for Bitcoin Mining Dr. Timo Hanke March 31, 2016 (rev. 5) Abstract. AsicBoost is a method to speed up Bitcoin mining by a factor of approximately 20%. The performance gain is achieved
Qlik REST Connector Installation and User Guide
Qlik REST Connector Installation and User Guide Qlik REST Connector Version 1.0 Newton, Massachusetts, November 2015 Authored by QlikTech International AB Copyright QlikTech International AB 2015, All
CMSS An Improved Merkle Signature Scheme
CMSS An Improved Merkle Signature Scheme Johannes Buchmann 1, Luis Carlos Coronado García 2, Erik Dahmen 1, Martin Döring 1, and Elena Klintsevich 1 1 Technische Universität Darmstadt Department of Computer
Index Terms: Data integrity, dependable distributed storage, Cloud Computing
Volume 5, Issue 5, May 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Cloud Data Protection
ZooKeeper. Table of contents
by Table of contents 1 ZooKeeper: A Distributed Coordination Service for Distributed Applications... 2 1.1 Design Goals...2 1.2 Data model and the hierarchical namespace...3 1.3 Nodes and ephemeral nodes...
