ruslan-smirnov, если UI не сложный, можно и C# использовать. А так, по-моему, лучше PyQt для кроссплатформенного интерфейса. Но в систему надо будет устанавливать библиотеки Qt нужной версии.
Евгений Семашко, храните массив с количество символов для каждого слова и проходясь по этому массиву откусывайту от строки ключа нужное количество символов и вставляйте после этих символов пробел.
bool Protect() ...
PS. если честно, стыдно такие вопросы задавать