Cut the pork belly into roughly 1in/2.5cm cubes. They can be longer from skin to inner meat but try to make them relatively even if you were to look from the skin side end on.
Blanch the pork to remove any impurities and blood. You can do this by placing in a pot of water and bringing to a boil then boiling for a few minutes, or I prefer to bring a pot of water to a boil first then add the pork and cook for around 3 - 5 minutes. In both cases, then drain the pork and rinse. Set the pork aside in a dish to drain.
Clean out the wok/pot or use a clean one. You want a pot big enough to hold the pork pieces in a single layer, but not with too much extra space, and with a lid. Warm the pot over a medium-low heat and add the oil then add the sugar into the oil.
Warm the sugar gradually so that it melts and starts to turn a light caramel color. Don't stir the sugar - if it is all in a pile and you want to spread it out a little, jiggle the pot a little instead to help it move.
Once the sugar is a golden color, add the drained blanched pork pieces. Increase the heat slightly and cook the pork, turning regularly, so that they are coated in the sugar on all sides and turn a light golden color.
Add the shaoxing wine, stir through and scrape any browning from the bottom of the pot. Then add the light and dark soy sauces and water so that the pork pieces are just about covered. Add the slices of ginger, star anise and pieces of green onion.
Cover the pot and bring to a simmer then reduce the heat slightly to keep it simmering rather than boiling strongly. Leave the lid very slightly open to allow steam to escape and leave to simmer for around 1 hour. As it cooks, if it looks like it is becoming dry, add a little more water. After this point, if you want to store, then allow it to cool before transferring to a container to refrigerate/freeze together with the sauce.
Check that the pork is tender, then remove the lid and increase the heat. Let the sauce boil so that it reduces down to a more syrup-like consistency and coats the pork (it may take around 20 -30 minutes, depending on how much liquid was left). Stir now and then and reduce the heat if needed so that the pork doesn't burn. Once there is just a little sauce left, remove from the heat and serve.