אני אנסה לתת לך כמה טיפים לידע כללי, אגב ממליץ לקרוא בוויקיפדיה.
קודם כל, הפונקציה שלך היא כנראה לא
חד חד ערכית ועל (משמע שלכמה ערכים מתאימה אותה הצפנה), שזה לא ממש טוב.
דבר שני, אם הפונקציה שלך עובדת על ידי העלאה בחזקה וכו' זה לא כל כך חכם. אם תקרא קודים של הצפנות תראה שנהוג להשתמש בפעולה מודולו שלא מאפשרת בשום צורה לדעת מאיזה מספר זה הגיע, וכן פעולות על הביטים של התווים בשביל להתעסק ברמת הbit ולא ברמת הbyte.
צר לי לאכזב אך כנראה שניתן ליצור פונקציה הופכית לשלך..
אגב הדמו לא עולה לי, אני אשמח לשם האתגר לראות את הדמו ולנסות לכתוב פונקציה הופכית
בהצלחה!