C# or C++ Protected Fields Tray Application

Виконано Опубліковано %project.relative_time Оплачується при отриманні
Виконано Оплачується при отриманні

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# Техніка Microsoft MySQL PHP Управління проектом Архітектура ПЗ Тестування ПЗ Робочій стіл Windows

ID Проекту: #3381454

Про проект

12 заявок(-ки) Дистанційний проект Остання активність Nov 24, 2008

Доручено:

thoriumsl

See private message.

$55.25 USD за 14 дні(-в)
(12 відгуків(-и))
4.2

12 фрілансерів(-и) готові виконати цю роботу у середньому за $217

ElanGroup

See private message.

$212.5 USD за 14 дні(-в)
(393 відгуків(и))
8.0
smartprovw

See private message.

$170 USD за 14 дні(-в)
(282 відгуків(и))
7.5
timtash

See private message.

$212.5 USD за 14 дні(-в)
(96 відгуків(и))
6.3
Eng1neer

See private message.

$85 USD за 14 дні(-в)
(59 відгуків(и))
6.2
minyun

See private message.

$255 USD за 14 дні(-в)
(76 відгуків(и))
6.2
sanpee

See private message.

$127.5 USD за 14 дні(-в)
(92 відгуків(и))
6.0
yilin

See private message.

$255 USD за 14 дні(-в)
(77 відгуків(и))
5.8
nigrom

See private message.

$297.5 USD за 14 дні(-в)
(22 відгуків(и))
5.0
egyptsoft

See private message.

$85 USD за 14 дні(-в)
(6 відгуків(и))
3.5
hnaveed

See private message.

$170 USD за 14 дні(-в)
(8 відгуків(и))
2.8
vw7087303vw

See private message.

$680 USD за 14 дні(-в)
(1 відгук)
0.0