Thursday, July 20, 2017

Relational Databases



A relational database is simply a database displayed as a table with rows and columns that contains relatable data.  Each piece of data within the database is related to another by at least one specific field.  For example, if you were to view a customer database table it could have multiple customers listed with their identifying information and related to another table by their location.  Being able to group these customers by location allows easy manipulation and retrieval of the data.  For instance, if you were holding a sale for a specific location you could query the database for everyone within a twenty-mile radius to send them an email about the upcoming sale.
Another relation that could be considered with customers are the orders of which they have purchased in the past.  These orders are stored within the database as a relation to each customer and can be found by searching through the customer’s history.  This can be extremely helpful if a customer plans to reorder an item or even return a recently purchased item.  An instance of which a return customer is purchasing another item, once you enter the customer’s name in the lookup field it can pull in all their data from the database.  Such as their full name, billing and shipping address, and sometimes even their specific size of clothing.
There are six database objects of which are available within Access and they are as follows; table, query, form, report, macro, and module.  All of these listed top-level objects are extremely useful and a key part to utilizing Access properly.  A table is what technically holds all the data and a query can be used to search, sort or even retrieve the specified data from the table.  For example, if you were to query a table within the database to find all customers who live in Texas it would look similar to this, SELECT * from customers where state is Texas.
The database object form is more user friendly than entering the data directly into the datasheet.  Considering these data-entry and display forms look very close to a paper document you would fill out on a regular basis, such as an application or during a doctor visit.  “Forms can display specific fields from within a table which can help limit the user’s access to sensitive data while still allowing access to other fields within the same table” (Alexander & Kusleika, 2013).  A report can be extremely useful as it allows a user to be able to print data out in an easy to read format.  Reports can be modified and customized to list specific information from a specified table.  For example, if you would like to know how many customers have bought a specific inventory item within the past month you could set the criteria to query the table and it would be able to return a printable version.
Macros are considered to be tools of which allow automation among specified tasks without the need to program.  They can be used alongside any report or form and can add functionality to them.  These can be stored for later use by accessing a drop-down menu within Microsoft Access.  Modules contain programming statements written in the VBA programming language (Alexander & Kusleika, 2013).  Utilizing modules within Microsoft Access would require a collection of VBA code that can be called from within the database.  Such VBA code would contain a variety of subroutines, global variables, and even user-defined functions.
The five step design method offers any novice database user to learn the fundamentals for creating a database.  Each step can take time depending on the database being created.  The first step involves research and information gathering, to find out whether the user would like full functionality of the database or simply to run reports from it.  The next step involves designing the reports, as the end users are much more likely to continue being involved with user friendly data.  Step three of the five in this method is designing the data, which requires gathering all the information needed for the reports that were designed in the previous step.  Step four is probably by far the most difficult, which is the table design, this is when you decide which fields are needed for the tables that create the report.  The very last step is the form design, which require three objects, labels and their text-box entry fields, special controls, and graphical objects for enhancement (Alexander & Kusleika, 2013).

References
Access. (n.d.). Retrieved from Tech on the Net: https://www.techonthenet.com/access/modules/
Alexander, M., & Kusleika, D. (2013). Access 2013 Bible. John Wiley & Sons.
Harrington, J. L. (2009). Relational Database Design and Implementation, 3rd Edition. Morgan Kaufmann.
Introduction to macros. (n.d.). Retrieved from Microsoft Office Support: https://support.office.com/en-us/article/Introduction-to-macros-a39c2a26-e745-4957-8d06-89e0b435aac3

Wednesday, July 19, 2017

Encryption Methods



Data Protection

Algorithm
Strength
Use
DES
Insecure
Government used in the 1970’s
AES
Secure
Replaced DES and is currently used by the government.
AES256
Extremely Secure
Government uses this for top secret information.

Algorithm
Strength
Use
RSA
Secure
Multiple environments, such as SSL and key exchange.
Diffie-Hellman
Secure
Creates and sends keys across public networks (Dulaney & Easttom, 2014).
Elliptic Curve Cryptography
Most Secure
Combines points within a curve with points at infinity.

Hashing must contain these three characteristics, irreversible, fixed length, and no collisions.  There are also three hashing algorithms available, Secure Hash Algorithm (SHA), Message Digest Algorithm (MD), and RACE Integrity Primitives Evaluation Message Digest Algorithm (RIPEMD).
Secure Hash Algorithm has three different size values, SHA which is a 160-bit hash value, SHA-2 which has 224, 256, 334, and 512-bit, and SHA-3 which uses the SHA-2 values.  SHA can be utilized alongside of an encryption protocol.  SHA-2 is the most commonly used worldwide, but SHA3 was recently released and has now become a standard.  The original name for SHA was Keccak and it was designed by Guideo Bertoni, Joan Daemen, Michael Peeters, and Gilles Van Assche. (Dulaney & Easttom, 2014)
The Message Digest Algorithm, which creates an one-way hash that helps maintain integrity.  The most recently released version is MD5 which has a 128-bit hash.  The others before it, MD, MD2, and MD4 are far less complex and unsecure.  Although MD5 is secure it does not have a very strong collision resistance.  Therefore, this algorithm is not recommended as SHA is the alternative.
RACE Integrity Primitives Evaluation Message Digest Algorithm, was originally based off of MD4, which brought questions of its security.  Currently there are still other versions of RIPEMD, which are RIPEMD-160, RIPEMD-256, and RIPEMD-320.  Overall, the most secure hashing algorithm to this day seems to be SHA3.
Secure Sockets Layer (SSL) is a protocol that utilizes the handshake method of starting a session.  SSL is a standard security technology that creates an encrypted connection between a web server and a web browser.  The connection guarantees that all data distributed between the two parties remain secretive and integral.  This protocol can be used alongside with Transport Layer Security (TLS). 
Transport Layer Security (TLS) is the security protocol that would expand upon utilizing alongside SSL.  A majority of web browsers start with port 443 when accessing a TLS/SSL connection, unless the server is configured to use port 80.  The reason of which TLS is the better option than SSL, as it is more secure and does not require nearly as much configuration.
Company
Encryption Used
Basic Cost
Symantec
Combination of SSL encryption and a non-encrypted HTTP ports
$399 for 1 year
Digicert
Combination of SSL encryption and RSA.
$175 for 1 year

Reason
Definition
Example
Confidentiality
Avoid the unsanctioned discovery of data on a network.
An unsecure network with little to no confidentiality is easy to crack and steal the data.
Integrity
Guaranteed that a message wasn’t altered during communication.
Message being altered to contain a virus during transmission.
Digital Signatures
Authenticates the veracity of the memo and source.
Like a signature used when processing a transaction.
Authentication
Verification of authenticity.
Not a fake.
Nonrepudiation
Denial prevention
Preventive measures to ensure denial is not possible.

Public Key Infrastructure system (PKI) is a system that helps create and preserve a dependable networking environment.  Its main purpose is specifically to manage certificates and keys.  The use of PKI enables the organization the ability to utilize encryption and digital signature services across a wide variety of applications.  Public Key Infrastructure contains four main components, certificate authority (CA), registration authority (RA), RSA, and digital certificates (Dulaney & Easttom, 2014).
Certificate authority, is an association that issues, revokes and distributes certificates for verification purposes.  A registration authority, allows some of the workload from the certificate authority to be distributed as RA is basically the middleman within the entire process.  Registration authority basically handles the distribution, validation, and the registrations for the certificate authority.
RSA is an algorithm that utilizes large integers as the base, being it has been widely implemented it is now a standard.  The digital certificate is used throughout the process to verify the authenticity of all parties involved.

Binary Conversions

The conversion of numbers is common in mathematics and has been used for many generations.   During the creation of computers number co...