<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: decryption/masking process? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845660#M334332</link>
    <description>&lt;P&gt;If the definition of high4 is known, reversing the masking is easy: just use translate and swap "high4" and "string".&lt;/P&gt;</description>
    <pubDate>Tue, 22 Nov 2022 13:37:40 GMT</pubDate>
    <dc:creator>andreas_lds</dc:creator>
    <dc:date>2022-11-22T13:37:40Z</dc:date>
    <item>
      <title>decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845637#M334327</link>
      <description>&lt;PRE&gt;string = COLLATE(1,256);
high4=substr(string,55);
APPLICANT_ID=translate(sup_id_no,high4,string);
sup_id_no=translate(sup_id_no,high4,string);
EMAIL=translate(EMAIL,high4,string);&lt;/PRE&gt;
&lt;P&gt;looks like the above code is doing some masking or decryption... am I right? What exactly are they trying to do?&amp;nbsp; Are they reversible?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Nov 2022 10:16:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845637#M334327</guid>
      <dc:creator>HeatherNewton</dc:creator>
      <dc:date>2022-11-22T10:16:09Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845645#M334330</link>
      <description>&lt;P&gt;I don't have SAS at my fingertips to test this, but, yes, it looks like some kind of masking.&lt;/P&gt;
&lt;P&gt;I think you need more advanced algorithms to call it encryption &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;It looks like that you are shifting characters to another character 55 positions away in the ASCII collating sequence.&lt;/P&gt;
&lt;P&gt;I guess it would be reversible by shifting it back.&lt;/P&gt;
&lt;P&gt;So from a security perspective, it doensn't really meet up to any standards.&lt;/P&gt;</description>
      <pubDate>Tue, 22 Nov 2022 11:48:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845645#M334330</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2022-11-22T11:48:46Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845652#M334331</link>
      <description>&lt;P&gt;Agree with&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13674"&gt;@LinusH&lt;/a&gt;. The result looks like some "unprintable" character values, but you can see for yourself by examining the hexadecimal view:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="sas"&gt;data orig;
 sup_id_no = "1234567";
 EMAIL = "SUPPLIER@company.com";
 put sup_id_no= $hex256. email= $hex256.;
run;

data shift(keep=sup_id_no EMAIL);
  set orig;
  string = COLLATE(1,256);
  high4=substr(string,55);
  sup_id_no=translate(sup_id_no,high4,string);
  EMAIL=translate(EMAIL,high4,string);
  put sup_id_no= $hex256. email= $hex256.;
run;&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;Before:&lt;BR /&gt;sup_id_no=31323334353637 EMAIL=535550504C49455240636F6D70616E792E636F6D&lt;BR /&gt;&lt;BR /&gt;After:&lt;BR /&gt;sup_id_no=6768696A6B6C6D EMAIL=898B8686827F7B887699A5A3A697A4AF6499A5A3&lt;/PRE&gt;
&lt;P&gt;It hides the values from clear-text viewing, but it's not encryption per se.&lt;/P&gt;</description>
      <pubDate>Tue, 22 Nov 2022 12:53:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845652#M334331</guid>
      <dc:creator>ChrisHemedinger</dc:creator>
      <dc:date>2022-11-22T12:53:38Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845660#M334332</link>
      <description>&lt;P&gt;If the definition of high4 is known, reversing the masking is easy: just use translate and swap "high4" and "string".&lt;/P&gt;</description>
      <pubDate>Tue, 22 Nov 2022 13:37:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/845660#M334332</guid>
      <dc:creator>andreas_lds</dc:creator>
      <dc:date>2022-11-22T13:37:40Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/859099#M339444</link>
      <description>&lt;P&gt;if I have these kind of masking in sas dataset and I am converting sas dataset to csv and have csv load into DB2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;do I need to apply encoding from sas dataset to csv&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;also encoding from csv to data in db2?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I tried without in both steps and the data in DB2 cannot show though it get loaded in successfully&lt;/P&gt;
&lt;P&gt;and in csv it looks like alphabets and chinese characters&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;what do I need to do, please assist&lt;/P&gt;
&lt;P&gt;thanks&lt;/P&gt;</description>
      <pubDate>Thu, 16 Feb 2023 02:51:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/859099#M339444</guid>
      <dc:creator>HeatherNewton</dc:creator>
      <dc:date>2023-02-16T02:51:10Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/859106#M339448</link>
      <description>&lt;P&gt;Get in touch with the people responsible for privacy/data security within your organization. Set up a masking/encryption process which complies with your organization's rules (this current masking is much too easy to crack to be of any real value) and does not produce random unreadable characters (what you see is the UTF representation of multi-byte sequences you create). Then apply this process in your new data warehouse setup.&lt;/P&gt;</description>
      <pubDate>Thu, 16 Feb 2023 04:11:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/859106#M339448</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2023-02-16T04:11:00Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/863405#M341066</link>
      <description>Does these steps by any chance change the encoding to something not utf-8 ? After i loaded data in db2 using codepage 1208, still some characters cannot show even if I gave it lots of space.. what could the tranaformation collate, high4 have done?</description>
      <pubDate>Fri, 10 Mar 2023 11:45:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/863405#M341066</guid>
      <dc:creator>HeatherNewton</dc:creator>
      <dc:date>2023-03-10T11:45:58Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/865356#M341745</link>
      <description>&lt;P&gt;yes we are doing it properly but still need to input production data into new database (for SIT purpose) where I encounter encoding problem. I saw in sas document, collate will output some european language when value is over a certain value and it is kind of the ISO8859 standard. How can I know what code page to use when loading these data into DB2?&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2023 05:19:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/865356#M341745</guid>
      <dc:creator>HeatherNewton</dc:creator>
      <dc:date>2023-03-21T05:19:50Z</dc:date>
    </item>
    <item>
      <title>Re: decryption/masking process?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/865375#M341746</link>
      <description>&lt;P&gt;As already stated by others this is a rather poor masking algorithm that likely doesn't meet your companies compliance standards.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The algorithm just shifts characters ending up with target characters that might be not printable. And if they are not printable then they are not printable whether they are stored in SAS or DB2 and whatever encoding and codepage gets used (unless conversion is wrong).&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2023 07:04:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/decryption-masking-process/m-p/865375#M341746</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2023-03-21T07:04:07Z</dc:date>
    </item>
  </channel>
</rss>

