Криптография это почти целиком и полностью алгоритмы, а писать их на C# всё равно, что сайты на Паскале.
В самом шарпе есть пространство имён System.Security для таких целей. C# строго типизированный язык, а для ваших частых преобразований она не нужна, собственно говоря вы идёте против одной из основ языка. Но такое майки предусмотрели, тут вам поможет unsafe как раз для таких преобразований. Если приспособить код под bitarray будет сложновато, то int => bool делается с закрытыми глазами.