Thai Fried Rice

ingredients

  • 1.5 cups of cooked Jasmine rice cooled (or day old rice works well too)
  • 250g minced beef
  • some green onions
  • ¼ of a big white onion
  • 2 cloves garlic
  • 1 egg
  • ½ tablespoon soy sauce
  • ½ tablespoon oyster sauce
  • Pinch of sugar (optional)
  • 1 tablespoon of oil for frying
  • 5 chilies
  • 3 tablespoons of fish sauce
  • ½ of a lime

instructions

Peel 2 cloves of garlic, and then just finely mince them. Slice ¼ of a sweet white onion into medium sized strips. Finely dice about 3 – 4 green onions.
Turn on your stove to medium high, heat up your wok (or frying pan), and add about 1 tablespoon of oil.
Once your oil is hot, add the garlic first, and stir fry continuously for about 15 seconds or so, until it gets nice and fragrant Next, toss in your minced beef, and fry for about 30 seconds. Add in a little less than ½ of your rice first. This is going to soak up all those
delicious minced beef juices and oils and keep your rice nice and dry. Stir fry for about 10 more seconds – This is a little known trick to make good rice, so it remains nice and dry. Scoot all your rice to one side of the pan, and then crack in the egg into the empty side.
Whirl the egg up, let it cook for a few seconds, and then start to mix it up with the rice and minced beef
Keep stir frying for about 20 seconds until the egg is fully cooked, and then add in the rest of your rice, and give it a quick stir.
Add ½ tablespoon of soy sauce, ½ tablespoon of oyster sauce, just a pinch of sugar (optional), and continue stir frying your rice, making sure all the sauce get mixed in.
Then add your chopped onions, and stir fry for another 30 seconds until the vegetables wilt, but they can still be crisp and not fully cooked
Lastly, toss in your green onions, stir it a few more seconds, and it’s ready to plate.
Slice off a wedge of lime, and serve it on the plate next to the rice. For the final touch, I like to sprinkle some freshly ground black pepper and Chili flakes. Add 3 tablespoons of fish sauce to a small bowl. Slice about 5 Thai chilies (you can add more or less, up to you), and add them to the fish sauce. Finally, I like it with a little squeeze of about ½ of a lime – but this is optional – and at many Thai restaurants it’s only fish sauce and chilies. That’s it, give it a stir, and put on top of your fried rice for extra saltiness

Cooking Summer Rolls

Preparation 45 min, Cooking 5 min, Serves 8 rolls

Ingredients

The rolls

  • 60 grams rice vermicelli noodles
  • 8 rice wrappers (25 cm diameter)
  • 125g boneless, skinless chicken breast cooked and peeled
  • 2 tablespoons chopped fresh Thai basil
  • 3 tablespoons chopped fresh mint leaves
  • 3 tablespoons chopped fresh coriander
  • 2 leaves green leaf lettuce, chopped

The Sauce

  • 125 ml Thai Sweet Chili Sauce
  • 1 tablespoon sugar
  • 125 ml hot water
  • 1 tablespoon fish sauce

Instructions

Bring a medium saucepan of water to boil. Boil rice vermicelli 3 to 5 minutes, or until al dente, and drain.
Fill a large bowl with warm water. Dip one wrapper into the hot water for 1 second to soften. Lay a wrapper flat. In a row across the center, place 2-3 slices of peeled chicken, a small handful of vermicelli, basil, mint, coriander and lettuce, leaving about 5 centimeters uncovered on each side. Fold
uncovered sides inward, then tightly roll the wrapper, beginning at the end with the lettuce.

Repeat with remaining ingredients.

In a small bowl, heat 125 ml water with sugar until completely dissolved. Stir in sweet chili sauce and fish sauce. Mix well. *Optional: Add chopped chilies and
crushed peanuts to your sauce for added spice and crunch.

Yummy yummy into my tummy

How to make Red Curry Paste

Ingredients

  • 3 teaspoons white pepper corns
  • ½ teaspoon cumin powder
  • ½ teaspoon coriander powder
  • 8 dry red spur chilies (soaked in water for about 10 minutes to soften them)
  • ½ teaspoon salt
  • 10 – 14 small cloves of garlic
  • 5 small shallots (Thai shallots are the size of grapes, so it’s about 2 tablespoons worth)
  • 1 tablespoon finely sliced lemongrass
  • 1 tablespoon finely sliced coriander roots
  • 1 tablespoon finely sliced ginger
  • Skin of ½ lime

Instructions

Using a mortar and pestle is the easiest way. If you don’t have one, you can use a blender to make this red curry paste recipe.
First, smash the dry ingredients. Add 3 teaspoons of white pepper corns to your mortar and pound it until it’s a fine powder.
Add ½ teaspoon of cumin and ½ teaspoon of coriander to the pepper and mix it all thoroughly, and then set them aside in a small bowl.

NOTE: If you only have pre-ground white pepper, you can eliminate the first step and just mix these 3 spices together in a small bowl.

Take 8 dry spur chilies (prik chee fa haeng), soak them in water for a few minutes to re-hydrate them, then drain the chilies. Cut off their stems, and you can then chop them into small centimeter pieces. You can take out the seeds to make their red curry paste less spicy.
Add the chopped dry chilies to the mortar along with ½ teaspoon of salt and start pounding. Keep on pounding for about 5 – 10 minutes until most of the chilies are nice and broken, the oils are coming out, and it’s starting to looks almost tomatoey.
Step back over to your chopping board and peel about 10 – 14 cloves of garlic. If the cloves are really big, use about 8.
Next peel 5 small shallots Chop them into small pieces.
Take 1 stalk of lemongrass, pull off and discard the outermost leaf, and then slice it from the bottom into small slivers. You want enough for 1 tablespoon.
Take the fresh coriander roots from about 3 stalks, cut off the roots, slice them into small pieces, and again you want about 1 tablespoon worth of coriander roots
Take your ginger and slice it into pieces, enough for 1 tablespoon worth.
Next take a fresh lime and slice off only the green skin. You want to slice off the skin very delicately, making sure you get mostly green, not cutting off any of the white pith. I used the skin from about ½ of the lime.
Toss all of those ingredients into the already pounded chilies. Pound and pound until you’ve got a buttery, oily, and extremely fragrant Thai red curry paste. This should take anywhere from 15 – 30 minutes, again, you can alternatively use a blender or food processor.
When your paste is buttery and smooth, go back to your bowl of white pepper and dry spices, and mix it into the paste. Mix it all in and smooth it out.
Done :)

JavaScript loop / foreach an object

Coming from PHP I wondered how do to a simple foreach() in JavaScript.

function loopObject($object) {
    for (const [$key, $value] of Object.entries($object)) {
        // dome something
    }
}

Not that once I found the entries function. Why I use the dollar sign $ for the variables? It is a habit and easier to read and it avoids conflicts with language reserved words.

Obsolete key exchange mechanisms alias crypto wars part eleven

Obsolete key exchange mechanisms alias crypto wars part eleven

Especially weak key exchange mechanisms indicated by the cipher suite include those designated as EXPORT or ANON;  cipher suites using these key exchange mechanisms should not be used. Even if the cipher suite used in a TLS session is acceptable, a key exchange mechanism may use weak keys that allow exploitation. TLS key exchange methods include RSA key transport and DH or ECDH key establishment. DH and ECDH include static as well as ephemeral mechanisms. NSA recommends RSA key transport and ephemeral DH (DHE) or ECDH (ECDHE) mechanisms, with RSA or DHE key exchange using at least 3072-bit keys and ECDHE key exchanges using the secp384r1 elliptic curve. For RSA key transport and DH/DHE key exchange,  keys less than 2048 bits should not be used,  and ECDH/ECDHE using custom curves should not be used. The use of custom public key parameters in key exchange messages is deprecated per RFC 8422 Section 5.1.1

The recommended configuration is the following

Header always set Strict-Transport-Security "max-age=15553000; preload"
SSLUseStapling On
SSLSessionCache shmcb:/opt/apache2/logs/ssl_gcache_data(512000)
SSLStaplingCache shmcb:/opt/apache2/logs/ssl_stapling_data(512000)
SSLOptions +StrictRequire +StdEnvVars -ExportCertData
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLCompression Off
SSLHonorCipherOrder On
SSLCipherSuite SSL ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384
SSLCipherSuite TLSv1.3 TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384

SSLOpenSSLConfCmd ECDHParameters secp521r1
SSLOpenSSLConfCmd Curves sect571r1:sect571k1:secp521r1:sect409k1:sect409r1:secp384r1

H2Direct On

SSLOpenSSLConfCmd SignatureAlgorithms rsa_pss_rsae_sha512:rsa_pss_rsae_sha256:ECDSA+SHA512:ECDSA+SHA256:RSA+SHA512:RSA+SHA256
SSLOpenSSLConfCmd ClientSignatureAlgorithms rsa_pss_rsae_sha512:rsa_pss_rsae_sha256:ECDSA+SHA512:ECDSA+SHA256:RSA+SHA512:RSA+SHA256

Archive for January, 2021

Archives by Month: