Make some guajillo paste*:
Soak the chilies in warm water until they soften, 1 to 2 hours. Transfer the chilies to a blender along with a generous ¼ cup of the soaking water and blend, on low speed at first and gradually raising it to high speed, until smooth.
Roast the red peppers:
Place the peppers directly over a gas flame on the stove. Turn them occasionally with tongs to ensure even cooking, and roast until their skins blister and turn black all over. (If the skin turns gray, the pepper has over cooked.)
If you don’t have a gas range, place the peppers on a foil-lined baking sheet and roast them in a 500℉ oven until the skins blister and loosen (about 25 minutes), or place them under a broiler, turning them to blacken each side. A blowtorch works well, too.
When the peppers are evenly roasted, immediately transfer them to a container, tightly cover, and let them steam for 20 minutes. Remove the skins with your hands, rubbing with a paper towel if needed. Don't rinse them; this would wash away much of their flavor. Remove and discard the seeds & stems.
Make the romesco:
In a food processor, pulse the hazelnuts to a breadcrumb-like consistency. Transfer them to a large bowl.
Pulse the peeled peppers and tomatoes in the food processor to make a course purée. Add the purée to the bowl with the nuts, then fold in the guajillo paste, olive oil, garlic, vinegar and paprika. Season with 1½ teaspoons of kosher salt, plus more to taste if needed. The final sauce should be rough in texture.
Store it, covered with a layer of olive oil, in an airtight container in the refrigerator for up to 3 weeks.
*The guajillo paste can be made hours, or even days, in advance. Store it in an airtight container in the refrigerator for up to 4 weeks.