| Contact | Education | Instruction | Research | Personal |
|---|---|---|---|---|
Professional PropagandaMy experience in Computer Science has helped me to learn valuble skills, tools, and practices. On this page, you will find a list of pages that provide information on each of these, along with general reference information.Security
Web Programming
Authoring Tools
Email Authentication and ConfidentialityAuthentication is an important issue when dealing with email. Whenever I send an email, it will contain a PGP signature (usually as a MIME attachment). I have provided a link to my PGP Public Key, which can be used to verify if I am the sender of a particular email (assuming that you also believe that I am the person who wrote this page, which is a fairly decent bet, since UITS and the CSG would both be quite unhappy if anyone else was using my account...). If you are interested in using cryptography for authentication or confidentiality in email, I recommend checking out http://www.gnupg.org/ to obtain GPG. I also recommend the Mozilla Thunderbird mail client and the Enigmail extension for GPG support. Instant Messaging Authentication and ConfidentialityMany people overlook protecting their instant messaging clients when thinking about security. However, because of their informal nature, IMs may be something that should remain private. Fortunately, there is software that can make such security fairly easy and unobtrusive. Off The Record, a security software suite, provides extensions that can be used to encrypt and authenticate instant messages with remote parties.OTR plugins for Gaim 1.x can be installed both for Windows and Linux. For Mac users, you can use Adium, which has built-in support for OTR, or you can use a proxy on the local machine which will work with iChat and other clients. IPSec (Internet Protocol Security)IPSec, a tool for creating Virtual Private Networks, allows users to establish authenticated and confidential communication between two end-hosts, an end-host and a gateway, or two gateways. Unlike using SSL for web security, IPSec can be implemented below the transport layer, allowing for reuse and simplicity. Several implementations for IPSec exist. The Linux 2.6 kernel now implements IPSec natively. Another implementation, Openswan, can be used on earlier Linux versions.SSH (Secure Shell) and SCP (Secure Copy)Secure Shell, a replacement for telnet, allows for remote login and resource usage. However, SSH can be used for more; SCP allows for file transfer along with the creation of secure tunnels, which allows unsecure protocols to be used in a secure manner. One popular application, Virtual Network Computing, is often used with SSH tunnels to provide a secure solution.CVS (Concurrent Versions System)The following is a basic guide on using CVS. See also the department's CVS FAQ page.One of the more common checkout uses is to use "ext" (the CS FAQ explains more about this). To do so, make sure your CVS_RSH environment variable is set to "ssh". Next, check out your repository. If you are using the CS machines and using an ACL to share with other users, use the school host: cvs -d :ext:USERNAME@school.cs.indiana.edu:/path/to/repository/folder co modulename where USERNAME is of course replaced with your username. If you have never used CVS before, the CS FAQ under number 6 gives you information on using CVS's help commands. However, for what we are doing, you should only need to know the following: cvs co MODULE : checks out MODULE. You only need to do this once and I have given you the exact syntax above cvs update -d -P : Updates all the files in the current working directory as well as any subdirectories. Purges any removed directories. cvs commit -m "MESSAGE" : Stores any modification you have made into the shared repository with the given message. cvs add FILENAME : Adds FILENAME to the repository. If this is a binary file, you should add " -kb " before the filename. cvs remove FILENAME : Removes FILENAME from the repository. cvs log FILENAME : Shows the revision history and comments for a file.Good project conventions:
LaTeXLaTeX is a mark-up similar to HTML which allows you to create professional documents (because it is what the professionals use!). It is more difficult to learn than Microsoft Word, but it can do a lot of things very easily. It can also handle very large documents and stores the file in plain-text, making it great for collaboration.It is fairly easy to learn the basics of LaTeX, but is difficult to fully master. I have included a helpful primer that I used to learn LaTeX. |
||||
Page accessed 207 times, last modified on June 06, 2007. This page uses valid W3C HTML and CSS markup.