Jim McLeod MyDBA  SQL Server Performance Tuning Consultant with MyDBA  Microsoft Certified Trainer with SQLskills Australia 

Slides:



Advertisements
Similar presentations
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
Advertisements

By: Mr Hashem Alaidaros MIS 326 Lecture 6 Title: E-Business Security.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
Environmental Council of States Network Authentication and Authorization Services The Shared Security Component February 28, 2005.
Principles of Information Security, 2nd edition1 Cryptography.
Security Overview Hofstra University University College for Continuing Education - Advanced Java Programming Lecturer: Engin Yalt May 24, 2006.
 Key exchange o Kerberos o Digital certificates  Certificate authority structure o PGP, hierarchical model  Recovery from exposed keys o Revocation.
Chapter 5 Cryptography Protecting principals communication in systems.
Wireless Encryption By: Kara Dolansky Network Management Spring 2009.
Computer and Network Security. Introduction Internet security –Consumers entering highly confidential information –Number of security attacks increasing.
Securing Data Storage Protecting Data at Rest Advanced Systems Group Dell Computer Asia Ltd.
Chapter Extension 23 SSL/TLS and //https © 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke.
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
SMUCSE 5349/49 Security. SMUCSE 5349/7349 Threats Threats to the security of itself –Loss of confidentiality s are sent in clear over.
CSCI 6962: Server-side Design and Programming
DNSSEC Cryptography Review Track 2 Workshop July 3, 2010 American Samoa Hervey Allen.
1 Introduction to Security and Cryptology Enterprise Systems DT211 Denis Manley.
.Net Security and Performance -has security slowed down the application By Krishnan Ganesh Madras.
Cao Tiến Đức. Outline What is TDE How TDE works Basic TDE operations Tablespace encryption HSM Reference.
Roy Ernest Database Administrator Pinnacle Sports Worldwide SQL Server 2008 Transparent Data Encryption.
Dan Johnson. What is a hashing function? Fingerprint for a given piece of data Typically generated by a mathematical algorithm Produces a fixed length.
Databases and security continued CMSC 461 Michael Wilson.
Chapter 8: Scrambling Through Cryptography Security+ Guide to Network Security Fundamentals Second Edition.
SEC835 Practical aspects of security implementation Part 1.
Cryptography, Authentication and Digital Signatures
Review of basic cryptographically algorithm Asymmetric encoding (Private and Public Keys), Hash Function, Digital Signatures and Certification.
Additional Security Tools Lesson 15. Skills Matrix.
Types of Electronic Infection
Module 3 – Cryptography Cryptography basics Ciphers Symmetric Key Algorithms Public Key Algorithms Message Digests Digital Signatures.
Digital Envelopes, Secure Socket Layer and Digital Certificates By: Anthony and James.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 12 Databases, Controls, and Security.
11-Basic Cryptography Dr. John P. Abraham Professor UTPA.
Public / Private Keys was a big year… DES: Adopted as an encryption standard by the US government. It was an open standard. The NSA calls it “One.
CSCI 3140 Module 6 – Database Security Theodore Chiasson Dalhousie University.
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
Privacy versus Authentication Confidentiality (Privacy) –Interceptors cannot read messages Authentication: proving the sender’s identity –The Problem of.
CS 4244: Internet Programming Security 1.0. Introduction Client identification and cookies Basic Authentication Digest Authentication Secure HTTP.
Identification Authentication. 2 Authentication Allows an entity (a user or a system) to prove its identity to another entity Typically, the entity whose.
Security fundamentals Topic 4 Encryption. Agenda Using encryption Cryptography Symmetric encryption Hash functions Public key encryption Applying cryptography.
Lecture Topics: 12/06 SSL Final Exam HW 7 & 8 Important concepts in 410 Other references Evaluations.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Database Security Cmpe 226 Fall 2015 By Akanksha Jain Jerry Mengyuan Zheng.
Deck 10 Accounting Information Systems Romney and Steinbart Linda Batch March 2012.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
Private key
Access The L Line The Express Line to Learning 2007 L Line L © Wiley Publishing All Rights Reserved.
2/19/2016clicktechsolution.com Security. 2/19/2016clicktechsolution.com Threats Threats to the security of itself –Loss of confidentiality.
Secure Data Access with SQL Server 2005 Doug Rees Associate Technologist, CM Group
 Encryption provides confidentiality  Information is unreadable to anyone without knowledge of the key  Hashing provides integrity  Verify the integrity.
Vijay V Vijayakumar.  Implementations  Server Side Security  Transmission Security  Client Side Security  ATM’s.
The Encryption Primer Steve Jones Editor SQLServerCentral.
Secure Instant Messenger in Android Name: Shamik Roy Chowdhury.
Building Defense in Depth using the Full Spectrum of SQL Server Encryption.
Over 18 yrs experience with SQL Server
Secure SQL Database with TDE Thomas Chan SQL Saturday Raleigh.
Zac Fenigshtien  Introduction: 3 Tier Architecture  SQL Injection ◦ Parameter Sandboxing ◦ Blacklisting, Whitelisting.
SQL Server Encryption Ben Miller Blog:
CRYPTOGRAPHY Cryptography is art or science of transforming intelligible message to unintelligible and again transforming that message back to the original.
ORACLE's Approach ORALCE uses a proprietary mechanism for security. They user OLS.... ORACLE Labeling Security. They do data confidentiality They do adjudication.
Chapter 40 Internet Security.
Securing Data with SQL Server 2016
SQL Server 2000 and Access 2000 limits
Security and Encryption
Chapter 5: The Art of Ensuring Integrity
Mike Furgal Director – DB and Pro2 Services March 20th, 2017
Transparent Data Encryption (TDE)
Instructor Materials Chapter 5: The Art of Ensuring Integrity
Secure/Encrypt SQL Server Database With TDE
SQL Server 2016 Security Features
Building Defense in Depth using the Full Spectrum of SQL Server Encryption Michael Keleher Database Administrator Hays Consultant at PwC.
Presentation transcript:

Jim McLeod MyDBA

 SQL Server Performance Tuning Consultant with MyDBA  Microsoft Certified Trainer with SQLskills Australia  MCITP:Database Administration

 Examine the basics of encryption  Determine when to use encryption  Explore how SQL Server handles encryption technology  Examine how to structure your tables in order to encrypt information efficiently  Consider how to protect your data from the DBA

 Plaintext  “This is a plaintext message.”  Codes  “Fred likes to eat cake.”  Fred = This, likes = is, to = a, eat = plaintext, cake = message.  Not terribly useful in computing  Ciphertext  “Guvf vf n cynvagrkg zrffntr.”  Operates on a group of letters, individual letters or bits

 Key based encryption uses mathematical algorithms to encrypt data by use of a key  Typically non-deterministic  Symmetric Keys  The same key will encrypt and decrypt the message  Asymmetric Keys  A public key is used to encrypt the message  Only the private key can be used to decrypt the message  For a given key length:  Symmetric algorithms are faster to encrypt/decrypt  Asymmetric algorithms are more secure  Compromise: encrypt data with a symmetric key, and encrypt the symmetric key with an asymmetric key.

 Business Requirements  Hide sensitive data  Passwords, Credit Card numbers, etc  Hide sensitive data from the DBA  Protect against unauthorised changes

 On disk encryption  Encrypted file system  Transparent Data Encryption – SQL Server 2008  Backup encryption – 3 rd Party  Client Connections (SSL)  Network Traffic  Individual Columns  Stored Procedures, Triggers, Functions, Views, etc

 Data can be encrypted at one of two points  Before it gets to the database engine (Application)  After it gets to the database engine (Database)  Application encryption:  Key must be stored in the application/another tier  Prevents Profiler from sniffing unencrypted data passed into stored procedures  Database cannot search efficiently  Database Encryption  Unencrypted data accessible inside the database  Unencrypted data passed to the database engine  Key may be held in an Hardware Security Module  via Extensible Key Management (2008)  via Extended Stored Procedures/SQLCLR (2005)

 A deterministic, one-way method of obfuscating data  Original source data cannot be retrieved  Easy to compute  Extremely difficult to construct a string with a given hash  A single bit changed in the source string will radically alter the result  Extremely unlikely that two source strings will produce the same hash  Deterministic means dictionary attacks are possible

 SUM() is a hashing function  SELECT SUM( ) = 96  HashBytes() function  128 bit - MD2, MD4, MD5  160 bit - SHA, SHA1

 Passwords and authentication  Salting  Data integrity  Protect your data from changes via Management Studio  Detecting changes in a table  Creating indexes for types that cannot be indexed  Images, varchar(max)  Demonstration – enforcing row integrity

 EncryptByPassphrase()  DecryptByPassphrase()  Uses a Triple-DES symmetric key  AES128, AES192, AES256 are stronger  No Database Master key, or certificate management required  If the passphrase is lost, the data is lost  Demonstration

 Profiler can expose data that should be encrypted  Stored Procedures  Passphrase or unencrypted data can be passed through as a parameter in plaintext  Passphrase can be hardcoded into the stored procedure  Ad Hoc Queries  Passphrase may be visible over the network  Profiler will hide the event details  Application must supply the passphrase

 Service Master Key  Instance scope  Is created the first time it is required to encrypt something  Can be regenerated.  Database Master Key  Database scope  Created by the DBA when the database needs to use encryption

 Asymmetric Keys  If VIEW DEFINITION is granted, the user can encrypt data  If CONTROL is granted, the user can encrypt and decrypt data  Public Key Certificates  Expiry Dates  Self Signed X.509 Standard (1024 bit)  Signed by a Certification Authority ( bit)  Used for encryption and authentication  Demonstrations  Asymmetric Key Encryption  Certificate Encryption

 A symmetric key is similar to Passphrase  Not restricted to Triple-DES  Fast to encrypt, but if you know how to encrypt, you can also decrypt  Symmetric Key with Certificate Demonstration

 Encrypted data cannot be searched on without decrypting the data, resulting in a table scan  Need some way of narrowing the search  Reduce the number of rows requiring decryption from 1 million to 100.  AdventureWorks comes with an index on , indicating that they search for customers based on an Address  Non-deterministic encryption means we can’t index the encrypted value  Create a hash of the first part of the  Doesn’t give away any information about the Contact  Can be indexed  Demonstration

 DBA has control over all certificates in all databases  Database Master Keys encrypted via the Service Master Key will be wide open to the DBA  Certificates/keys protected by passwords will be hidden from the DBA via Profiler  Demonstration

 Feature of SQL Server 2008 Enterprise Edition  Encrypts data on disk, and is unencrypted when loaded into memory  Uses a symmetric key called the Database Encryption Key  Replication or memory dumps may expose unencrypted data  No application architecture changes required.  Small performance hit on every disk I/O  Recovery of an encrypted database MUST be tested on a separate server before a disaster  Backup your keys/certificates  Backups of encrypted database will not compress well, but Page Compression will still work

 Roll your own encryption functions  Try the SQL 2000 DBA Toolkit  Uses extended stored procedures  urity/sql2000dbatoolkitpart1/2361/ urity/sql2000dbatoolkitpart1/2361/  Encrypt data at the application layer  Put database files on an encrypted partition

 Examine the basics of encryption  Determine when to use encryption  Disk, Connection, Column, Network, Backups  Explore how SQL Server handles encryption technology  Hashing, Certificates, Symmetric Keys, Asymmetric Keys, Transparent Data Encryption, Extensible Key Management  Examine how to structure your tables in order to encrypt information efficiently  Indexes of hashes  Consider how to protect your data from the DBA