Probably this is very naive question, based on lack of understanding but I was watching a video from Andreas M. Antonopoulos about blockchain, bitcoin and consensus algorithms and he asked for the SHA-256 output of the string Hello!. A guy told him the first few characters, and being Windows/C# dev I decided just for fun to check the answer implementing this very simple C# method:      public byte[] Generate(string valueToHash)     {         byte[] hashValue;         byte[] stringToBytes = Encoding.ASCII.GetBytes(valueToHash);          using (SHA256 hashGenerator = SHA256.Create())         {             hashValue = hashGenerator.ComputeHash(stringToBytes);         }          return hashValue;     }   and then output the result using this method:      public static void PrintByteArray(byte[] array)     {         for (int i = 0; i &lt; array.Length; i++)         {             Console.Write($"{array[i]:X2}");             if ((i % 4) == 3) Console.Write(" ");         }         Console.WriteLine();     }   But I got a different result.   I remember in the past that there were sites which were storing a huge databases of hashes and the actual value to produce them and back then it was possible to paste the hash value and if it's something common you will get the actual string. This got me to think that no matter what language/Os you are using, a value hashed with SHA-256 for example would produce the same result. However it seems that this is not entirely the case. The guy from the video who provided the answer turned out (from the comments) to use a Mac machine, so what exactly is causing the SHA-256 to produce different outputs for the same input? Is it the OS, is it the programming language? Maybe I've made mistake in my simple code?
If you hash a string using SHA-256 on your computer, and I hash the same string using SHA-256 on my computer, will we generate the same value? Does the algorithm depend on a seed (so we'd both need the same seed) or some other such parameter?  edit:  To clarify, by 'string' I meant 'the same byte input', which as the comments and @ispiro's answer point out, may be different for the same character string depending on the encoding.
let $\gamma$ be a closed continuosly differentiable path in the upper half plane  not passing through $i$. What are the possible values of the integral $$\frac{1}{2\pi i}\int_{\gamma}\frac{2i}{z^2+1}dz$$ well the integral can be broken like  $$\frac{1}{2\pi i}\int_{\gamma}\frac{2i}{(z+i)(z-i)}dz=$$  $$\frac{1}{2\pi i}\int_{\gamma}\frac{dz}{z-i}dz-\frac{1}{2\pi i}\int_{\gamma}\frac{dz}{z+i}dz=$$ by Cauchy Integral Formuale $$f(i)-f(-i)$$,so the second integral is $0$ as it is analytic in the upper half plane, but the first integral iss just $n(\gamma,i)$, which iss the windding number of $\gamma$ around $i$ what more I can say? Thank you. Is there a easy way to test ubuntu on new notebooks before buying it? Boot drops to a (initramfs) prompts/busybox I am running an HP pavilion dv6000 dual boot win7 and Ubuntu 12.04. (well, up until today).  After a reboot, the boot process drops to the BusyBox shell and I end up at the prompt:  BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash) Enter 'help' for a list of built-in commands.  (initramfs)   I've been researching others who have had this same problem, but haven't been able to find any of those solutions to work for me.  I tried the method described , and after the final command   mount -t ntfs-3g /dev/sda1 /root -o force   it does nothing and gives me another (initramfs) prompt.  I can boot to a live CD (USB) and get to a terminal, but it doesn't seem to do much good, as I can see the /dev/sda1 in the ls command, but it doesn't recognize it when I try to cd to it.  One more question: using the command fdisk -l how can I tell which mount point (sda1/sda2) is my windows partition and which one is Ubuntu? file /dev/* prints the description of a bunch of files as "block special (M/N)" and "character special (M/N)", where M and N are numbers. For example:  $ file /dev/null /dev/null: character special (1/3)   man file doesn't seem to document these, but refers vaguely to man stat, which seems to refer to these as major and minor device types. apropos 'device type' finds nothing. So what do these numbers mean? How do I print all lines of a file with duplicate values in a certain column Given a file like this:  1,768,12,46576457,7898 1,123,435,134,146 2,345,6756856,12312,1311 5,234,567465,12341,1341 1,3245,4356345,2442,13 9,423,2342,121,463 9,989,342,121,1212   I would like to list all rows (in bash terminal) such that the value in column 1 appears at least twice (in column 1). The result should be  1,768,12,46576457,7898 1,123,435,134,146 1,3245,4356345,2442,13 9,423,2342,121,463 9,989,342,121,1212 Drupal failed after update I am buying a new desktop PC in early 2013, anyway this question should apply to someone intending to buy a new laptop/ultrabook as well.  This machine is not meant for gaming, and if I ocasionally do it, I can survive with minimum graphics. However I may need some heavy multimedia edition or multitasking at times, so basically  my greatest priority is a good processor, after that perhaps average graphic card (if onboards are not enough, I am still not informed enough about that), at least 4GB of RAM with possibility of expansion.  I know there are some PC models specially designed to ship with Ubuntu, which is the OS I use the most these days. However, most people around me use Windows and some software with unsupported versions for Linux and not having a Windows license becomes a bit problematic.  Given that, I would like to find information about which PC models or even manufacters currently on the market have the best compatibility with Ubuntu, I am still undecided between building my own desktop or buying a pre-made model, so I would like to find information both for certified models and certified hardware or even Ubuntu partners that may work closely with Canonical.  Where to find this information in order to make sure that I will have a good experience with Ubuntu on my new PC in the years to come? If you have to provide some initial troubleshooting support by phone [or email], and you don't have access to the user's PC itself, what is the easiest and most foolproof question one can ask of the user to find out if the 'dumb' user is using either Windows 7 or Windows Vista?  For example: determining if the user has either Windows XP or Windows Vista/7 is easy. Just ask the user if the button at the left bottom corner is (a) either square with the word 'Start' on it, or (b) it is a round button.   But how do you determine the difference between Vista and 7?  Edit: For all the existing answers the user has to type something, and do it correctly. Sometimes even that is already hard for a computer illiterate user. My XP example just requires looking. If it exists (although I am afraid it doesn't), I think a solution that is just based on something this is visually different between Vista and 7 would stand above all others. (Which makes Dan's suggestion to turn over the box and look at the label" not so stupid). Perhaps the small 'show desktop' rectangle at the right side of the task bar (was that present in Vista)? Check if url has domain name and not an ip To install the graphics driver I need to exit GUI / Gnome and go to the terminal. How can I do this in Ubuntu 18.04? Ctrl(STRG)+Alt+F1...F7 does not work, neither on the desktop, nor on the login screen... static variables in an inlined function I have a function that is declared and defined in a header file. This is a problem all by itself. When that function is not inlined, every translation unit that uses that header gets a copy of the function, and when they are linked together there are duplicated. I "fixed" that by making the function inline, but I'm afraid that this is a fragile solution because as far as I know, the compiler doesn't guarantee inlining, even when you specify the "inline" keyword. If this is not true, please correct me.  Anyways, the real question is, what happens to static variables inside this function? How many copies do I end up with? I am trying to use the MailManager class in Drupal 8 to send HTML mail. I got it working, but it isn't parsing the HTML markup. I think something is wrong with the headers of the email.  What I have is a custom module (Custom_forward) that contains a form and that calls Mailmanager::mail() in its submitForm() method, which contains the following code.          // Email body         $header = $sender . ' thought you would like to see this page from the website.';         $personal_message = $form_state-&gt;getValues()['message_body'];         $entity_url_value = '&lt;a href="' . $entity_url-&gt;toString() . '"&gt;Go to article&lt;/a&gt;';         $message = $header . '&lt;br&gt;' . $personal_message . '&lt;br&gt;' . $entity_url_value;          // Email         $langcode = 'en';         $mailManager = \Drupal::service('plugin.manager.mail');         $to = $form_state-&gt;getValues()['recipient'];          $params['title'] = 'Forward';         $params['message'] = $message;         $result = $mailManager-&gt;mail('custom_forward', 'forward', $to, $langcode, $params, NULL, true);          if ($result['result'] !== true) {             drupal_set_message(t('There was a problem sending your message and it was not sent.'), 'error');             \Drupal::logger('mail-log')-&gt;error($message);         }         else {             drupal_set_message(t('Your message has been sent.'));         }   According to Drupal you also need the hook_mail method in mytheme.theme to be able to send message, you can see this method here:  function custom_forward_mail($key, &amp;$message, $params) {   $message['body'] = [];   $message['subject'] = [];   $message['headers'] = array(     'content-type' =&gt; 'text/html',     'charset' =&gt; 'UTF-8',     'format' =&gt; 'flowed',     'delsp' =&gt; 'yes',     'from' =&gt; \Drupal::config('system.site')-&gt;get('mail')   );    switch ($key) {     case 'forward':       $message['subject'] = $params['title'];       $message['body'][] = '&lt;html&gt;&lt;body&gt;' . $params['message'] . '&lt;/body&gt;&lt;/html&gt;';       break;   } }   As you can see, I am setting the content type to text/html and that should tell the mail system to parse the content as an HTML, but this is not working for some reasons.  This is a testing email. All the HTML markup is not shown, but also not working.  Bassem thought you would like to see this page from the website. personal message Go to article [1] [1] http://myhost/node/81 Restore SQL Server 2012 backup to a SQL Server 2008 database? When do I need to invoke \phantomsection? Mathematica envelope for the bottom of a plot, a generic function Data from multiple lists using single REST API call I'm looking for a closed-form expression (in terms of $n$), that will give the sequence  $$ (s_n) = \left( \frac{3}{10}, \, \frac{3}{10} + \frac{33}{100}, \, \frac{3}{10} + \frac{33}{100} + \frac{333}{1000}, \dots \right). $$  Can anyone think of one? I made a related post to this question several minutes ago but I realized I was interpreting the sequence wrong. Please anyone tell me when we have to use "has been, have been , had been" and something  started in past and still continuing is it possible to use has been ? Sending 2D arrays in Fortran with MPI_Gather Changing the resistor to be in front or behind an LED doesn't affect brightness? Note: I am very new to the more advanced side of electricity. I do not have a firm grasp on the exact mechanics.  Lets say I have an example circuit:  5V Power Supply -&gt; LED -&gt; Resistor -&gt; Ground  Now the LED is receiving 20ma and 5V. If I were to switch the LED and the resistor however, the LED should receive less voltage but the same current, so wouldn't it be dimmer? Or would it receive the same voltage?  I've looked at these two threads and their answer doesn't help.