KeystrokeRecorder - Saves or emails keystrokes and screenshots.
IMPORTANT: The 'Enable access for assistive devices' checkbox located in the 'Universal Access' 'System Preference' pane must be enabled for KSR to log keystrokes. Simply go to the 'Apple Menu', choose 'System Preferences', click 'Universal Access', then tick the 'Enable access for assistive devices' checkbox.
Information | FAQ | History | KSR Classic
FAQ / Frequently Asked Questions
IMPORTANT INFORMATION
1. KeystrokeRecorder will only work if you check the 'Enable access for assistive devices' checkbox located in the 'Universal Access' System Preference pane. Simply go to the 'Apple Menu', choose 'System Preferences', then click 'Universal Access' as shown below.

2. If you are running Mac OS X 10.5 Leopard, please download the latest KSR immediately! Although earlier versions of KSR functions properly in Mac OS X 10.4, KSR's icon does not hide itself in the dock using KSR 3.3.1 and earlier on Mac OS X 10.5.
3. If you are running Mac OS X 10.3 Panther, please download the latest KSR immediately! Although all versions of KSR functions properly in Mac OS X 10.2, KSR's icon does not hide itself in the dock using KSR 3.1.3 and earlier on Mac OS X 10.3.
4. The Apple Mac OS X 'Security Update 2004-12-02' prevents KSR from recording passwords entered into password fields in web browsers that use the Appkit including Safari. The information regarding this security update is available here. Update: Since Internet Explorer does not repect the update and passwords can be recorded using it rather than Safari.
Appkit
Available for: Mac OS X v10.3.6, Mac OS X Server v10.3.6, Mac OS X v10.2.8, Mac OS X Server v10.2.8
CVE-ID: CAN-2004-1081
Impact: Characters entered into a secure text field can be read by other applications in the same window session
Description: In some circumstances a secure text input field will not correctly enable secure input. This can allow other applications in the same window session to see some input characters and keyboard events. Input to secure text fields is now enabled in a way to prevent the leakage of key press information.
Launching Keystroke Recorder
Since KeystrokeRecorder is an application, installation and configuration is very easy. Since it is an application, you can install it so it records the specific user account that you are interested in. If you'd like it to record all users, install KSR so each user account launches it at startup. Each user will need a seperate preference file as well.
There are three ways, that we know of, to launch KeystrokeRecorder.
- Just double click the application.
- Add KeystrokeRecorder to your Mac OS X 10.2.x "Login" System Preference or Mac OS X 10.3.x Startup Items tab in the "Accounts" System Preference. When you login, Keystroke Recorder will automatically launch. If you use this method, the user could disable it by removing it. One method to prevent this is to rename Keystroke Recorder with a less obvious name. It's also a good idea to give the file a nice looking icon.
- You could use a program like CronniX or QuicKeys that can automatically launch an app after a certain period of time. In order for it to work properly, you would need KSR to be launched very frequently, like once every minute.
Removing Keystroke Recorder
Since KSR is a background application it is more difficult to quit than a standard application. They easiest way to remove it is to restart and then delete the KSR application. This will work unless you've added KSR to your startup items. If you have, remove it from your Startup Items and then restart.
Renaming Keystroke Recorder
Use a good name, like "iTunes Optimizer", "Disk Speedup", "QuickTime Control", or "MP3 Accelerator" with the thought that if it looks useful or it makes the computer run better, people won't delete it. Please remember that changing the name of KeystrokeRecorder will create a new preferences file based on the name you provide.
Changing the Icon
To change the icon, just find a file that has an icon that you like or download one from your favorite icons site like Xicons. Click on the file once and choose get info from the file menu. Click on the icon in the get info window and choose copy from the edit menu. Finally, click on KSR, choose get info, click on the KSR icon in the get info window, and choose paste from the edit menu.
Preference File, Log Files, and Screenshot Folder Location
The preferences files and log files are saved into the users preference folder. For example, "/users/hal/library/preferences/". As disscussed above, KSR can be renamed. If you rename KSR, the preference file use the same name as the program with " Prefs" appended. If you set KSRs name to "MP3 Accelerator", the preference file would be named "MP3 Accelerator Prefs". The saved screenshots folder follows the same pattern. So, the saved screenshots folder would be "MP3 Accelerator Prefs Folder" if KSR was named "MP3 Accelerator". Although this might seem complex, it helps make KSR harder to detect.
The log file adds information to let you know where the keystrokes are coming from as well as the date and time. For example:
<KSRPN>Internet Explorer</KSRPN><KSRDT>4/15/02 11:23:41 AM</KSRDT>
I am using Internet Explorer right now.
<KSRPN>Microsoft Entourage</KSRPN><KSRDT>4/15/02 11:24:00 AM</KSRDT>
Now using Entourage.
The tags <KSRPN> and </KSRPN> indicate the process name. The tags <KSRDT> and </KSRDT> indicate the date and time.
Changing and Testing Preferences
KSR must be relaunched for the changes to the preferences to take effect. The easiest way to test your KSR settings is to set and save your settings, restart, launch KSR, type enough text to fill the queue, and check the log. Then change your settings, restart, launch KSR, type enough text to fill the queue, and check the log. KSR can also be "killed" with the Process Manager, although its name has been changed to avoid spyware hunters. With each release, we may change the name.
There are two ways to change your KeystrokeRecorder preferences:
- Use the "KeystrokeRecorder X Pref Editor". When you launch the pref editor, click the "Pref Editor" tab and then click "Load". It will ask you to find the KeystrokeRecorder application. It does this since there is no way to know what the preferences file will be called, if you were to rename it. The "Log Decryptor" tab is for reading encrypted log files.
- The second way is to use a text editor to edit the prefs file. When you save it, make sure that it is still a text file and each field contains correct data. If the preferences become corrupt, delete the file and launch either KeystrokeRecorder or the Prefs Editor to regenerate the prefs file. If you encrypt your preferences, you won't be able to edit the encrypted fields.
You can change these preferences:
- Queue Threshold - You can set the queue from 5 to 30,000. The unregistered version has it's queue set to 25. The queue represents the number of keystrokes that are saved in memory. When the queue is full, it either writes the data to the log file OR sends an email. Setting the queue to a low number will result in saving to the log file more often OR more emails sent with less data in them. However, setting the queue to high will result in data loss if the computer encounters a kernel panic or is rebooted by the user. If the computer is normally restarted no data loss will occur as KeystrokeRecorder saves OR emails the data when the application normally quits.
- Log Name Prefix - The beginning part of the filename.
- Log Name Suffix - The file name extension.
- Log Name Base - This inserts the date in the filename. Using this method will create a new file every day. The value must be "Y" for it to insert the date. Any other values will not use the date in the file name. Normally, the value should be "N" to not use the date in the name.
- Registration Name - Your user name.
- Registration Number - Your serial number.
- Encrypt Preferences - When ticked, the many of the preferences fields will be encrypted. This will protect KSR and email account information if the preferences file is found.
Log Destination - The destination for the logs. The value must be either "file" or "email". - Encrypt Logs - When ticked, the log files written to the hard drive or sent via email will be encrypted.
- Encrypt Logs - When ticked, the "BACKSPACE" and "DELETE" tags will be automatically cleaned. If a backspace is found the tag as well as the preceeding key that was pressed is removed. If a delete is found, only the tag is removed.
- Clean BACKSPACE and DELETE from Logs - If checked all backspace and delete keys will be removed from the logs. The key that was meant to be removed will remain in the log file. If "My name is Hq<del>al" was typed, "My name is Hqal" would appear in the log file.
- SMTP Username - Your username for the SMTP Server.
- SMTP Password - Your password for the SMTP Server.
- SMTP Server - The SMTP Server.
- SMTP From Email Address - The email address that the message will appear to come from.
- b - The email address where the logs will be sent.
- SMTP Subject - The subject of the email. You can add the tag <DT> to have the date and time inserted into the subject of the email.
- SMTP Authentication Method - This is the authentication method for the SMTP server. The values must be either: "plain", "login", or "CRAM-MD5". The most popular method is "login".
- Use ESMTP - This permits sending to SMTP servers that require special handling. If you want to use the .Mac "smtp.mac.com" server you must enable ESMTP. The value must be "Y" to use ESMTP. Any other values will not use ESMTP.
- Capture Screenshots - This enables the screenshot timer.
- Email Screenshots - If checked, the screenshots will be emailed and then deleted from the hard drive. If not checked, the screenshots will be saved to the hard drive.
- Capture All Displays - If checked KSR will take screenshots of all displays connected to the computer. If not checked, KSR will take a screenshot of the main display which would be the display with the menubar.
- Image Quality - This is the quality of the jpg image which ranges from 1 to 100, with 100 being best. Keep in mind that using 100 will result in a larger file which will take more hard drive space and take longer to email. The default setting is 30.
- Compress Using gzip - If checked KSR will compress the jpg using the tightest possible compression using gzip. This will use slightly less hard drive space and will take less time to email.
- Minutes Between Screenshots - This is the number of minutes between screenshots. Setting this to a low number will send many emails! Setting it to 2 would result in about 720 emails a day!!!
By default, the log file can be edited by hand as it is just a text file. Keep in mind that any mistakes maded editing the file by hand could cause problems like sending a screenshot via email every second! We highly suggest that you should NOT edit the preference by hand to avoid mistakes. Below is how the default preferences appear (the comments in bold are not in the log file):
25 - the key queue
KSRLog - the log name prefix
.txt - the log name suffix
Y - the log base name option
name - the registraion name
serialnumber - the registraion number
file - the log destination (file or email)
smtpUserName - the SMTP server username
smtpPassword - the SMTP server password
smtp.domain.com - the SMTP server
fromUser@domain.com - the from email account
toUser@domain.com - the to email account
KSR Log Results <DT> - the email subject
login - the SMTP authentication type (plain, login, cram)
N - the ESMTP option
N - the encrypt preferences option
N - the encrypt logs option
N - the clean logs option
N - the activate screenshots option
N - the take screenshots of all displays option
Y - the use gzip option
30 - the jpg quality (1 - 100)
0 - the number minutes between screenshots (0 means none)
<blank> - intentionally blank
N - the screenshot via email option
These settings will set the queue to 25, the file names will look like KSRLog20020325.txt, and it has not been registered yet. By default the preference file and the log files are not encrypted. Also, by default screenshots are not taken.
Sending Logs and Screenshots Via Email
Each email account is different, so configuring it can be confusing. Although we can't provide support for configuring KeystrokeRecorder with your specific email account, these points might help. It's also a bit difficult to enter your settings since KeystrokeRecorder has no visible interface.
- The email feature will not work with AOL. AOL does not use SMTP servers to send email.
- You need to enter the SMTP values precisely. If you add an extra space anywhere, most likely, your email will not go through.
- Your SMTP user name might not be your email address. Sometimes it's what is before the "@", for example my user name for "hal@mac.com", is "hal".
- The hardest part is determining the SMTP Authentication Method. Our ISP does not require authentication to send mail if we are connected to them, so we leave the username and password blank. If you need to use authentication, try "login" first and "plain" next. We've never seen "CRAM-MD5" used, but we offer it, just in case. You should also try the Use ESMTP option. We've used the .Mac mail for a while without it and a few months ago, we had to check it as they started to require it. From what we understand, you might want to start off with it checked.
- Please remember, that if you change your settings, you either need to relaunch KeystrokeRecorder or restart your computer. If you are skilled with the process manager, you can "kill" the Keystroke Recorder process and manually relaunch it. Please do not ask us how to kill it as we do not want to give "spyware hunter" programs this information.
Settings for .Mac
If your ISP does not allow the use of other SMTP servers other than their own, your .Mac account won't work.
Username: dotmacusername
Password: dotmacpassword
SMTP Server: smtp.mac.com
From: hal@mac.com
To: hal@campsoftware.com (can be anything)
Authentication: Login
ESMTP should be checked.
Settings for Road Runner
Username: blank
Password: blank
SMTP Server: smtp-server.cfl.rr.com (yours will be different if you don't live in Central Florida)
From: hal@mac.com (can be anything)
To: hal@campsoftware.com (can be anything)
Authentication: Login
ESMTP should be checked.
Contact
Development and Consulting
Phone: 407-282-5585 (not for Product Support)
Fax: 407-650-3269
Email: hal@campsoftware.com
Address: PO Box 561259, Orlando, FL 32856-1259
Product Support
Email: support@campsoftware.com
Payment Processing
CampSoftware Products
Certification
- FileMaker 8 Certified Developer
- FileMaker 7 Certified Developer
- FileMaker Business Alliance Member
- Developing Since 1991
- Certified Help Desk Specialist, ACHDS, for 10.4, 10.3
- Certified Technical Coordinator, ACTC, for 10.1
- Apple Certified Technician
- Consulting Since 1988
FileMaker Techniques
- Field Naming and Graphing Standards.
- Fix Windows Bitmapped Fonts.
- Add ObjectNames.
- MultiKey Search.
Top Products / All Products
FMShell - Don't reinvent the wheel.
Our FileMaker database template will save your time.
ZipCalc - Target your postal mailings.
Enter a zipcode and distance to get the local zipcodes.
About
CampSoftware provides Macintosh software and hardware consulting solutions in Orlando and Central Florida, but we travel out of area quite often. We can help with Software Development using FileMaker Pro, REALbasic, and 4th Dimension (4D). As for Mac Support and Repair, we can assist with computer and server support, cross platform issues, networking, and web hosting.
Product Sourcing
Companies are increasingly entering emerging markets for producing products in order to pursue profit growth. However, many are experiencing the hassle associated with attempting direct dealings with overseas manufacturers. International Origin can bridge the gap and make your overseas dealings hassle-free. International Origin can provide reliable manufacturing, pricing to maximize your profits, arrange shipping, export documentation, and eliminate language, monetary, and cultural barriers





