C# or C++ Protected Fields Tray Application

Completed Posted Nov 11, 2008 Paid on delivery
Completed Paid on delivery

A tray application to allow setting and clearing a password; to watch for and take a function key to bring up a window to take secure data and insert it into the text entry box on top; and allows hovering cursor over secure text and if the currently set password successfully decodes it, display the protected information in a balloon.

## Deliverables

Detailed Requirements:

The tray application's icon should be a rounded rectangle dark blue, and have a diagnal yellow or gold key icon.

Hovering over the tray icon should display the text "[url removed, login to view] Secure field encoder/decoder".

Right-clicking on the tray icon should bring up a context menu, with the entries:

- Set Password (enabled by default)

- Clear Password (disabled by default)

- Insert Data (disabled by default)

- Set Hot Key (enabled)

- Exit (enabled)

When the user selects Set Password, display a small dialog box with two password fields, one labeled "password" and the other "confirm password"; and two buttons, "Cancel" and "OK". The "OK" button should become enabled only when both password fields contain the same non-empty data. If "Cancel" is pressed, nothing changes. If "OK" is pressed, the set the internal password value to what the user supplied. Enable "Clear Password" and "Insert Data" options in the context menu.

If user selects "Clear Password", set internal password value to empty, and disable the "Clear Password" and "Insert Data" options in the context menu.

If user selects "Insert Data", display a dialog box with a single text entry line, and "Cancel" and "OK" buttons. If there is no text in the box, the "OK" button is disabled. As soon as user enter any data, the "OK" button becomes active. When "OK" is pressed, pass the contents of the text entry box to the supplied [url removed, login to view] program along with the program password; capture the Base64 response; and insert into the top-most program's cursor position in this format: {{base64data}}.

If user selects "Set Hot Key" display dialog box where the hot key can be set. This can be a series of radio buttons, with options F9 F11 F12 Ctrl+F9 Ctrl+F11 Ctrl+F12, with "Cancel" and"OK" buttons. The program defaults to using F9, but if user changes to a different one, adjust the system accordingly so the user-selected Hot Key triggers the program (see next paragraph). Save this setting into registry key for next time the program is executed. This is the only setting the program needs to save.

If user clicks F9 or other configured hotkey, execute the same logic as if "Insert Data" was selected. If "Insert Data" is disabed, the hot key does nothing.

If program password is set,? monitor the cursor, and if a hover event is detected over any text (whether static or editable text, in any program) check to see if it conforms to the pattern {{base64data}}. If not, do nothing. If so, pass the base64 data and the program password to "[url removed, login to view] -d" (for decrypt) and capture the output. If the output is an empty string, display balloon tip "*** Invalid Password ***". If the output is a non-empty string, display that string in the balloon tip.

[url removed, login to view] is attached. If desired, the source code can be provided under nondisclosure agreement, so it can be incorporated directy rather than having to be called as a shell application.

[url removed, login to view] syntax examples:

C:\> tinycrypt hello password

NnPgp8Q7HBycw9gd0BT30Q==

C:\> tinycrypt -d? NnPgp8Q7HBycw9gd0BT30Q== password

hello

Inserting "hello" as a protected field inserts at the cursor into any editable field data in the format:

{{NnPgp8Q7HBycw9gd0BT30Q==}}

C Programming C# Programming Engineering Microsoft MySQL PHP Project Management Software Architecture Software Testing Windows Desktop

Project ID: #3381454

About the project

12 proposals Remote project Active Nov 24, 2008

Awarded to:

thoriumsl

See private message.

$55.25 USD in 14 days
(12 Reviews)
4.2

12 freelancers are bidding on average $217 for this job

ElanGroup

See private message.

$212.5 USD in 14 days
(393 Reviews)
8.0
smartprovw

See private message.

$170 USD in 14 days
(282 Reviews)
7.5
timtash

See private message.

$212.5 USD in 14 days
(96 Reviews)
6.3
Eng1neer

See private message.

$85 USD in 14 days
(59 Reviews)
6.2
minyun

See private message.

$255 USD in 14 days
(76 Reviews)
6.2
sanpee

See private message.

$127.5 USD in 14 days
(92 Reviews)
6.0
yilin

See private message.

$255 USD in 14 days
(77 Reviews)
5.8
nigrom

See private message.

$297.5 USD in 14 days
(22 Reviews)
5.0
egyptsoft

See private message.

$85 USD in 14 days
(6 Reviews)
3.5
hnaveed

See private message.

$170 USD in 14 days
(8 Reviews)
2.8
vw7087303vw

See private message.

$680 USD in 14 days
(1 Review)
0.0